time="2024-10-07T09:31:57Z" level=warning msg="/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/integration-test/docker-compose.yaml: `version` is obsolete" Container integration-test-forwarding-1 Creating Container integration-test-gateway-1 Creating Container integration-test-device-1 Creating Container integration-test-authentication-1 Creating Container integration-test-federation-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-gateway-1 Created Container integration-test-device-1 Created Container integration-test-authentication-1 Created Container integration-test-experiment-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-10-07T09:32:33Z"} authentication-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} experiment-1 | {"level":"info","log_level":"info","message":"Logging initialized","transports":"stdout"} authentication-1 | {"level":"info","message":"Authentication Service started successfully"} experiment-1 | {"level":"info","message":"Experiment 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:52264","level":"info","msg":"Received request.","req_id":1,"req_method":"GET","req_path":"/","subsystem":"opa","time":"2024-10-07T09:32:33Z"} authorization-1 | {"client_addr":"127.0.0.1:52264","level":"info","msg":"Sent response.","req_id":1,"req_method":"GET","req_path":"/","resp_bytes":1424,"resp_duration":0.237795,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:33Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"๐Ÿงช experimental features enabled: []","subsystem":"openfga","timestamp":1728293553.846449} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"using 'memory' storage engine","subsystem":"openfga","timestamp":1728293553.8465323} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"warn","message":"authentication is disabled","subsystem":"openfga","timestamp":1728293553.8465466} 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":1728293553.846567} 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":1728293553.8465855} 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":1728293553.8466322,"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":1728293553.8471513} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","level":"info","message":"HTTP server listening on 'localhost:3013'...","subsystem":"openfga","timestamp":1728293553.8485901} 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:32788","raw_request":{"name":"crosslab"},"raw_response":{"created_at":"2024-10-07T09:32:33.877077430Z","id":"01J9K55HPN7HDN7H7H5JAW65EV","name":"crosslab","updated_at":"2024-10-07T09:32:33.877077430Z"},"request_id":"f27e2202-0177-41e5-a04b-558dbc7041ce","subsystem":"openfga","timestamp":1728293553.877171} 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:32788","raw_request":{"schema_version":"1.1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_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":"01J9K55HRNFPHZA2D9VRCYSTK0"},"request_id":"687e95d6-43eb-4109-bdb6-626bef24f658","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293553.9412534} authorization-1 | {"client_addr":"127.0.0.1:52264","level":"info","msg":"Received request.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","subsystem":"opa","time":"2024-10-07T09:32:33Z"} authorization-1 | {"client_addr":"127.0.0.1:52264","level":"info","msg":"Sent response.","req_id":2,"req_method":"PUT","req_path":"/v1/data/jwt_secret","resp_bytes":0,"resp_duration":0.204386,"resp_status":204,"subsystem":"opa","time":"2024-10-07T09:32:33Z"} authorization-1 | {"level":"info","message":"Authorization Service started successfully"} authorization-1 | {"current_version":"0.54.0","download_opa":"https://openpolicyagent.org/downloads/v0.69.0/opa_linux_amd64","latest_version":"0.69.0","level":"info","msg":"OPA is out of date.","release_notes":"https://github.com/open-policy-agent/opa/releases/tag/v0.69.0","subsystem":"opa","time":"2024-10-07T09:32:34Z"} gateway-1 | {"time_local":"07/Oct/2024:09:32:40 +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.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"a6e8c9990bd2df5da082b525df214513"} authentication-1 | {"level":"info","message":"HEAD /auth/status 200 10ms","method":"HEAD","requestID":"a6e8c9990bd2df5da082b525df214513","responseTime":10,"status":200,"url":"/auth/status"} gateway-1 | {"time_local":"07/Oct/2024:09:32:40 +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.048","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"b014173faa8f64dd7bb40456d9ff1d01"} device-1 | {"level":"info","message":"HEAD /device/status 200 18ms","method":"HEAD","requestID":"18cb2150-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/device/status"} gateway-1 | {"time_local":"07/Oct/2024:09:32:40 +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.016","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"243ec1f67603d1830643b091f64a030d"} authorization-1 | {"level":"info","message":"HEAD /authorization/status 200 10ms","method":"HEAD","requestID":"243ec1f67603d1830643b091f64a030d","responseTime":10,"status":200,"url":"/authorization/status"} gateway-1 | {"time_local":"07/Oct/2024:09:32:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /federation/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.014","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"98f7f013d49ae2d8b09276700cb2cccb"} federation-1 | {"level":"info","message":"HEAD /federation/status 200 9ms","method":"HEAD","requestID":"18d3d3e0-848f-11ef-98ea-81d3ddff8b94","responseTime":9,"status":200,"url":"/federation/status"} gateway-1 | {"time_local":"07/Oct/2024:09:32:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"HEAD /experiment/status HTTP/1.1","status": "200","body_bytes_sent":"0","request_time":"0.016","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"5be136c382fb12d85dc14d8a74ec2b05"} experiment-1 | {"level":"info","message":"HEAD /experiment/status 200 12ms","method":"HEAD","requestID":"18d72f40-848f-11ef-9014-419506e25b51","responseTime":12,"status":200,"url":"/experiment/status"} gateway-1 | {"time_local":"07/Oct/2024:09:32:40 +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.011","http_referrer":"","http_user_agent":"curl/7.81.0","requestID":"2ce47ac8663ade6d8ce23d904cb107cc"} forwarding-1 | {"level":"info","message":"HEAD /forwarding/status 200 8ms","method":"HEAD","requestID":"18da8aa0-848f-11ef-8885-7d835fc08c91","responseTime":8,"status":200,"url":"/forwarding/status"} gateway-1 | {"time_local":"07/Oct/2024:09:32:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /login HTTP/1.1","status": "201","body_bytes_sent":"88","request_time":"0.117","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b0e7dd91d76c965f4e1dd9c9bdef6201"} authentication-1 | {"level":"info","message":"POST /login 201 97ms","method":"POST","requestID":"b0e7dd91d76c965f4e1dd9c9bdef6201","responseTime":97,"status":201,"url":"/login"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2M30.5BeM2FHtKQyAo6F9KLZ4N5br2nTCP2q-bebvMoL1Xfk","level":"info","message":"auth send jwt","requestID":"06b7de741b0dd62ecbaca14884d6736a"} authentication-1 | {"level":"info","message":"GET /auth 200 20ms","method":"GET","requestID":"06b7de741b0dd62ecbaca14884d6736a","responseTime":20,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"06b7de741b0dd62ecbaca14884d6736a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":3,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.376551,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"06b7de741b0dd62ecbaca14884d6736a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293563,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2M30.5BeM2FHtKQyAo6F9KLZ4N5br2nTCP2q-bebvMoL1Xfk"} authorization-1 | {"level":"info","message":"POST /authorize 200 28ms","method":"POST","requestID":"06b7de741b0dd62ecbaca14884d6736a","responseTime":28,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2a9b4a84-d607-4629-a3fe-6f2600ccbeb4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293563.500245} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"06b7de741b0dd62ecbaca14884d6736a","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a67542aa-ecc3-421b-9cd2-0c8fb8cdd28a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293563.5177426} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"06b7de741b0dd62ecbaca14884d6736a","responseTime":11,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"b1ae0f9f-c9bb-48ee-83b9-9e9860509977","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293563.5360548} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0b1290d1-b974-40f6-9281-3485b9741cdd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293563.536781} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"06b7de741b0dd62ecbaca14884d6736a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.536031714Z"}]},"request_id":"55c1f18b-36f5-43ba-9bca-aaca67bc2215","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293563.5442939} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"06b7de741b0dd62ecbaca14884d6736a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"06b7de741b0dd62ecbaca14884d6736a"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.299","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"06b7de741b0dd62ecbaca14884d6736a"} device-1 | {"level":"info","message":"POST /devices? 201 254ms","method":"POST","requestID":"06b7de741b0dd62ecbaca14884d6736a","responseTime":254,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2M30.5BeM2FHtKQyAo6F9KLZ4N5br2nTCP2q-bebvMoL1Xfk","level":"info","message":"auth send jwt","requestID":"fc4ffdf0ad07433af324cc6e199a92fe"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fc4ffdf0ad07433af324cc6e199a92fe","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"fc4ffdf0ad07433af324cc6e199a92fe"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":4,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.764231,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"fc4ffdf0ad07433af324cc6e199a92fe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293563,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2M30.5BeM2FHtKQyAo6F9KLZ4N5br2nTCP2q-bebvMoL1Xfk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fc4ffdf0ad07433af324cc6e199a92fe","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cf456cf7-7e93-41b9-9437-d036fe74259e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293563.612385} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"fc4ffdf0ad07433af324cc6e199a92fe","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7399d38f-5894-4875-972d-e401a4412751","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293563.6296706} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"fc4ffdf0ad07433af324cc6e199a92fe","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"48ca1124-6b44-4e76-8947-7b2be5f691ff","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293563.64764} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"856c747d-9682-4786-a331-39652e87937a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293563.6480124} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"fc4ffdf0ad07433af324cc6e199a92fe","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.647625310Z"}]},"request_id":"113dae0c-0e71-4d2c-a15d-45237a50c4b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293563.6607323} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"fc4ffdf0ad07433af324cc6e199a92fe","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"fc4ffdf0ad07433af324cc6e199a92fe"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.092","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fc4ffdf0ad07433af324cc6e199a92fe"} device-1 | {"level":"info","message":"POST /devices? 201 86ms","method":"POST","requestID":"fc4ffdf0ad07433af324cc6e199a92fe","responseTime":86,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"34178a5dd8946e95e0dd18185e631955","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"34178a5dd8946e95e0dd18185e631955","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ceebf2371d8ac885221134b492e787c5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ceebf2371d8ac885221134b492e787c5","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.009","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"34178a5dd8946e95e0dd18185e631955"} device-1 | {"level":"info","message":"OPTIONS /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/websocket 200 2ms","method":"OPTIONS","requestID":"34178a5dd8946e95e0dd18185e631955","responseTime":2,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/709fa53b-57b8-44ac-aa50-e8e948f40081/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","request_time":"0.012","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ceebf2371d8ac885221134b492e787c5"} device-1 | {"level":"info","message":"OPTIONS /devices/709fa53b-57b8-44ac-aa50-e8e948f40081/websocket 200 1ms","method":"OPTIONS","requestID":"ceebf2371d8ac885221134b492e787c5","responseTime":1,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU","level":"info","message":"auth send jwt","requestID":"ea9c0895ed365d68c0ac67459a1cc64d"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"ea9c0895ed365d68c0ac67459a1cc64d","responseTime":11,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU","level":"info","message":"auth send jwt","requestID":"3a896349ccca34472a9ba93765d3bef2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ea9c0895ed365d68c0ac67459a1cc64d"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"3a896349ccca34472a9ba93765d3bef2","responseTime":11,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3a896349ccca34472a9ba93765d3bef2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":5,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.058067,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ea9c0895ed365d68c0ac67459a1cc64d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"ea9c0895ed365d68c0ac67459a1cc64d","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":6,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71949,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3a896349ccca34472a9ba93765d3bef2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"3a896349ccca34472a9ba93765d3bef2","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3a896349ccca34472a9ba93765d3bef2"} gateway-1 | {"time_local":"07/Oct/2024:09:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/709fa53b-57b8-44ac-aa50-e8e948f40081/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.062","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3a896349ccca34472a9ba93765d3bef2"} device-1 | {"level":"info","message":"POST /devices/709fa53b-57b8-44ac-aa50-e8e948f40081/websocket 200 42ms","method":"POST","requestID":"3a896349ccca34472a9ba93765d3bef2","responseTime":42,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ea9c0895ed365d68c0ac67459a1cc64d"} gateway-1 | {"time_local":"07/Oct/2024:09:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.067","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ea9c0895ed365d68c0ac67459a1cc64d"} device-1 | {"level":"info","message":"POST /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/websocket 200 52ms","method":"POST","requestID":"ea9c0895ed365d68c0ac67459a1cc64d","responseTime":52,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5a48d82c53132a884d32b45f7ce0fee6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5a48d82c53132a884d32b45f7ce0fee6","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9? 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":"5a48d82c53132a884d32b45f7ce0fee6"} device-1 | {"level":"info","message":"OPTIONS /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9? 200 0ms","method":"OPTIONS","requestID":"5a48d82c53132a884d32b45f7ce0fee6","responseTime":0,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6dc538f7c4481a59f08b97a8607d0a29","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6dc538f7c4481a59f08b97a8607d0a29","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/709fa53b-57b8-44ac-aa50-e8e948f40081? 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":"6dc538f7c4481a59f08b97a8607d0a29"} device-1 | {"level":"info","message":"OPTIONS /devices/709fa53b-57b8-44ac-aa50-e8e948f40081? 200 1ms","method":"OPTIONS","requestID":"6dc538f7c4481a59f08b97a8607d0a29","responseTime":1,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU","level":"info","message":"auth send jwt","requestID":"0a03a13dba29dc0b1472026043f5c698"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"0a03a13dba29dc0b1472026043f5c698","responseTime":9,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU","level":"info","message":"auth send jwt","requestID":"d9ed55f231728b9b866016ea90d7d821"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d9ed55f231728b9b866016ea90d7d821","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0a03a13dba29dc0b1472026043f5c698"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d9ed55f231728b9b866016ea90d7d821"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":7,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.655533,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0a03a13dba29dc0b1472026043f5c698","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0a03a13dba29dc0b1472026043f5c698","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Received request.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Sent response.","req_id":8,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.801225,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d9ed55f231728b9b866016ea90d7d821","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"d9ed55f231728b9b866016ea90d7d821","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.536031714Z"}]},"request_id":"5d240d71-da91-4eeb-8e66-3bfcb8acf457","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.2340875} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0a03a13dba29dc0b1472026043f5c698","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.647625310Z"}]},"request_id":"3e9a3ce1-200a-4227-9690-5954cbbecb66","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.240272} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"d9ed55f231728b9b866016ea90d7d821","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"22cd5bb5-fe04-44b1-b6dd-3890bebad599","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.2463477} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"0a03a13dba29dc0b1472026043f5c698","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0727ed5e-e979-451d-8cc2-81cffc4c525a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.251849} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d9ed55f231728b9b866016ea90d7d821","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.536031714Z"}]},"request_id":"bf20b867-cacb-4ae7-8d72-cb186f4635ac","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.26184} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0a03a13dba29dc0b1472026043f5c698","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0a03a13dba29dc0b1472026043f5c698"} gateway-1 | {"time_local":"07/Oct/2024:09:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.070","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0a03a13dba29dc0b1472026043f5c698"} device-1 | {"level":"info","message":"PATCH /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9? 200 59ms","method":"PATCH","requestID":"0a03a13dba29dc0b1472026043f5c698","responseTime":59,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.647625310Z"}]},"request_id":"6a58e38e-a18d-4eb0-b910-c461f892d5d9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.2755973} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d9ed55f231728b9b866016ea90d7d821","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d9ed55f231728b9b866016ea90d7d821"} gateway-1 | {"time_local":"07/Oct/2024:09:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/709fa53b-57b8-44ac-aa50-e8e948f40081? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.068","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d9ed55f231728b9b866016ea90d7d821"} device-1 | {"level":"info","message":"PATCH /devices/709fa53b-57b8-44ac-aa50-e8e948f40081? 200 61ms","method":"PATCH","requestID":"d9ed55f231728b9b866016ea90d7d821","responseTime":61,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU","level":"info","message":"auth send jwt","requestID":"3b9593614237892892bb7e33e643fcfd"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"3b9593614237892892bb7e33e643fcfd","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3b9593614237892892bb7e33e643fcfd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":9,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.876747,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3b9593614237892892bb7e33e643fcfd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3b9593614237892892bb7e33e643fcfd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.536031714Z"}]},"request_id":"caf3beb4-524e-48ad-99b3-5d972e913621","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.309672} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3b9593614237892892bb7e33e643fcfd","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3b9593614237892892bb7e33e643fcfd"} gateway-1 | {"time_local":"07/Oct/2024:09:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.039","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3b9593614237892892bb7e33e643fcfd"} device-1 | {"level":"info","message":"GET /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9? 200 31ms","method":"GET","requestID":"3b9593614237892892bb7e33e643fcfd","responseTime":31,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU","level":"info","message":"auth send jwt","requestID":"75dad7ca909a923e36fe386906ff8a1b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"75dad7ca909a923e36fe386906ff8a1b","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"75dad7ca909a923e36fe386906ff8a1b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":10,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.682062,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"75dad7ca909a923e36fe386906ff8a1b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"75dad7ca909a923e36fe386906ff8a1b","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.647625310Z"}]},"request_id":"ae93f0b1-13d3-4463-82dd-ba40bd7015f8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.3484762} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"75dad7ca909a923e36fe386906ff8a1b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"75dad7ca909a923e36fe386906ff8a1b"} device-1 | {"level":"info","message":"GET /devices/709fa53b-57b8-44ac-aa50-e8e948f40081? 200 18ms","method":"GET","requestID":"75dad7ca909a923e36fe386906ff8a1b","responseTime":18,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081?"} gateway-1 | {"time_local":"07/Oct/2024:09:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/709fa53b-57b8-44ac-aa50-e8e948f40081? 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":"75dad7ca909a923e36fe386906ff8a1b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU","level":"info","message":"auth send jwt","requestID":"30d1df95801bf566f7b550bd4ea67c89"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"30d1df95801bf566f7b550bd4ea67c89","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"30d1df95801bf566f7b550bd4ea67c89"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":11,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.80958,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"30d1df95801bf566f7b550bd4ea67c89","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"30d1df95801bf566f7b550bd4ea67c89","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Attempting to run experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Attempting to book experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Successfully booked experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1c860670-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1c862d80-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":12,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.891247,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Received request.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1c860670-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1c860670-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Sent response.","req_id":13,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.734259,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1c862d80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1c862d80-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.536031714Z"}]},"request_id":"cd8f6e45-076c-411b-8a6d-2e8130922d49","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.563048} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1c860670-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.647625310Z"}]},"request_id":"3d314284-ca70-4010-941e-b2bfe8e89cfa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.5645719} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1c862d80-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1c860670-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9? 200 19ms","method":"GET","requestID":"1c860670-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1c862d80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/709fa53b-57b8-44ac-aa50-e8e948f40081? 200 19ms","method":"GET","requestID":"1c862d80-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Setting up experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Successfully locked booking for experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Attempting to update booking for experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Successfully updated booking for experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Successfully set up experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1c948560-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1c94d380-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Successfully running experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":14,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696331,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Received request.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1c948560-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1c948560-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Sent response.","req_id":15,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.72423,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1c94d380-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1c9548b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"1c94d380-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5262dc43-591e-45ea-9971-dfbd436470e4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.6704261} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.536031714Z"}]},"request_id":"855424bc-7f11-4892-b3c8-929d02292b3b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.6726074} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":16,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.296304,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1c9548b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","object_type":"device","rebac_allow":false,"scope_allow":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":"1c9548b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.647625310Z"}]},"request_id":"dd1941b9-e1e9-4796-8193-f17115cf786a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.67468} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"1c948560-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 13ms","method":"POST","requestID":"1c94d380-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8f584edd-4d4a-4ec2-8975-304dd41e632e#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8f584edd-4d4a-4ec2-8975-304dd41e632e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"f88ec624-4ba6-4035-9f7c-9ef0c701953a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.6844623} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1c9548b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/signaling 200 38ms","method":"POST","requestID":"1c9548b0-848f-11ef-9233-95baf63f17e0","responseTime":38,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1c948560-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7dc6e396-a5fb-4d59-984b-1725b7e3433a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.6920307} device-1 | {"level":"info","message":"GET /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9? 200 47ms","method":"GET","requestID":"1c948560-848f-11ef-9233-95baf63f17e0","responseTime":47,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 34ms","method":"POST","requestID":"30d1df95801bf566f7b550bd4ea67c89","responseTime":34,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1c9bff70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1c94d380-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/709fa53b-57b8-44ac-aa50-e8e948f40081? 200 49ms","method":"GET","requestID":"1c94d380-848f-11ef-9233-95baf63f17e0","responseTime":49,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b9ec26ab-0415-404a-8db8-2f4f1a1adfd7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.7006245} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":17,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.604541,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1c9bff70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","object_type":"device","rebac_allow":false,"scope_allow":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":"1c9bff70-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1c9d8610-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"30d1df95801bf566f7b550bd4ea67c89"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1c9bff70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} device-1 | {"level":"info","message":"POST /devices/709fa53b-57b8-44ac-aa50-e8e948f40081/signaling 200 14ms","method":"POST","requestID":"1c9bff70-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081/signaling"} gateway-1 | {"time_local":"07/Oct/2024:09:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.350","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"30d1df95801bf566f7b550bd4ea67c89"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8443d18-efe4-41f2-8fce-b87b7c2f61c1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.7111273} experiment-1 | {"level":"info","message":"POST /experiments? 201 322ms","method":"POST","requestID":"30d1df95801bf566f7b550bd4ea67c89","responseTime":322,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":18,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.220178,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1c9d8610-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","object_type":"device","rebac_allow":false,"scope_allow":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":"1c9d8610-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1c9d8610-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/signaling 200 12ms","method":"POST","requestID":"1c9d8610-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU","level":"info","message":"auth send jwt","requestID":"26728ab9aa718edc392448208f3c5b46"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"26728ab9aa718edc392448208f3c5b46","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"26728ab9aa718edc392448208f3c5b46"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ca01e20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":19,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.746146,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Received request.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26728ab9aa718edc392448208f3c5b46","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26728ab9aa718edc392448208f3c5b46","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3488783-1667-40c2-878a-a36da51626e1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.7285903} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Sent response.","req_id":20,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.251794,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1ca01e20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","object_type":"device","rebac_allow":false,"scope_allow":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":"1ca01e20-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.536031714Z"}]},"request_id":"4c0d606b-7eac-425b-8421-5cc6d439eb4a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.732519} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ca01e20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/709fa53b-57b8-44ac-aa50-e8e948f40081/signaling 200 10ms","method":"POST","requestID":"1ca01e20-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"26728ab9aa718edc392448208f3c5b46","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"26728ab9aa718edc392448208f3c5b46"} gateway-1 | {"time_local":"07/Oct/2024:09:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9? 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":"26728ab9aa718edc392448208f3c5b46"} device-1 | {"level":"info","message":"GET /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9? 200 16ms","method":"GET","requestID":"26728ab9aa718edc392448208f3c5b46","responseTime":16,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ca28f20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1ca2b630-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU","level":"info","message":"auth send jwt","requestID":"456e1a9002501d16d7f95a82b1aae4c2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":21,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.681102,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Received request.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"456e1a9002501d16d7f95a82b1aae4c2","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1ca28f20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"456e1a9002501d16d7f95a82b1aae4c2"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1ca28f20-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Sent response.","req_id":22,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.648312,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1ca2b630-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1ca2b630-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":23,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.63185,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"456e1a9002501d16d7f95a82b1aae4c2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"456e1a9002501d16d7f95a82b1aae4c2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.536031714Z"}]},"request_id":"d7648cac-18e4-48d1-a360-5bd2b5833f47","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.748749} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.647625310Z"}]},"request_id":"67e5ecc8-b074-4f44-b053-7c95e515fe66","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.7498655} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1ca28f20-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1ca2b630-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:43.647625310Z"}]},"request_id":"a5ef7b27-7575-4026-9b75-6b6f02c7a246","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.754227} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"456e1a9002501d16d7f95a82b1aae4c2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ca28f20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9? 200 19ms","method":"GET","requestID":"1ca28f20-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1ca2b630-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/709fa53b-57b8-44ac-aa50-e8e948f40081? 200 19ms","method":"GET","requestID":"1ca2b630-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"456e1a9002501d16d7f95a82b1aae4c2"} gateway-1 | {"time_local":"07/Oct/2024:09:32:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/709fa53b-57b8-44ac-aa50-e8e948f40081? 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":"456e1a9002501d16d7f95a82b1aae4c2"} device-1 | {"level":"info","message":"GET /devices/709fa53b-57b8-44ac-aa50-e8e948f40081? 200 16ms","method":"GET","requestID":"456e1a9002501d16d7f95a82b1aae4c2","responseTime":16,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Building connection plan","requestID":"30d1df95801bf566f7b550bd4ea67c89"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"efccc74f-afff-44aa-a60f-0aad04955929"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"f3c2a394-db75-47b5-8638-7bb7fdb9c80a"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"e01eae69-4edb-4acd-adb6-246f044c09d8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"30d1df95801bf566f7b550bd4ea67c89"} 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/6df14b30-0c25-4ced-a937-5d35e7df1ee9"},{"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/709fa53b-57b8-44ac-aa50-e8e948f40081"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"30d1df95801bf566f7b550bd4ea67c89"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1ca6fbf0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":24,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.032549,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1ca6fbf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293566,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2Nn0.W24A3KkswHOUpZ3QK9FIStsZlYzHSo0x8cK5muW08WU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1ca6fbf0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"f2a2415a-8d48-4be0-984f-fc299ab8909e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.791299} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0363e474-4264-4c69-a0eb-69f48ccdfee2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.7914963} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"1ca6fbf0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1ca6fbf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1ca6fbf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746'","requestID":"1ca6fbf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746'","requestID":"1ca6fbf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1ca6fbf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 46ms","method":"POST","requestID":"1ca6fbf0-848f-11ef-9233-95baf63f17e0","responseTime":46,"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":"1ca6fbf0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"30d1df95801bf566f7b550bd4ea67c89"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1cb44260-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6b85bf71-785f-4666-b662-0e8f0ef5b5e7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.8592837} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":25,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.548072,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1cb44260-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","object_type":"device","rebac_allow":false,"scope_allow":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":"1cb44260-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1cb44260-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/signaling 200 10ms","method":"POST","requestID":"1cb44260-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1cb63e30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d09422d6-ee8a-45c9-ae94-bbc91bd06e9f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293566.8718948} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":26,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.171859,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1cb63e30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1cb63e30-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1cb63e30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/709fa53b-57b8-44ac-aa50-e8e948f40081/signaling 200 10ms","method":"POST","requestID":"1cb63e30-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081/signaling"} device-1 | {"device":"6df14b30-0c25-4ced-a937-5d35e7df1ee9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"6df14b30-0c25-4ced-a937-5d35e7df1ee9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"709fa53b-57b8-44ac-aa50-e8e948f40081","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"709fa53b-57b8-44ac-aa50-e8e948f40081","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6046403040408861413 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:oS0z\r\na=ice-pwd:/oVTfYi9wb50gotnLEAY6B8k\r\na=ice-options:trickle\r\na=fingerprint:sha-256 E9:05:EC:2D:C5:C8:A0:2C:35:9E:46:1A:0F:25:2B:81:E3:D4:D1:87:04:1B:8C:A5:92:DB:DC:0A:67:0E:36:0A\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"709fa53b-57b8-44ac-aa50-e8e948f40081","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 3204196892819291429 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:9/lX\r\na=ice-pwd:dTv2on1fYtZ0ipx0udR3P2wO\r\na=ice-options:trickle\r\na=fingerprint:sha-256 75:F9:D8:E6:BA:C1:AA:0F:B8:06:3A:4A:54:5F:7E:EE:6C:F3:EC:89:AC:08:EE:4E:24:FB:DE:69:35:BF:4F:66\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"6df14b30-0c25-4ced-a937-5d35e7df1ee9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:685755807 1 udp 2113937151 0c66f9db-35fc-4c6d-8fce-724854be8d46.local 41973 typ host generation 0 ufrag 9/lX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6df14b30-0c25-4ced-a937-5d35e7df1ee9","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/6df14b30-0c25-4ced-a937-5d35e7df1ee9'"} device-1 | {"content":{"candidate":"candidate:3153357964 1 udp 1677729535 141.24.211.56 41973 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 9/lX network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"6df14b30-0c25-4ced-a937-5d35e7df1ee9","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/6df14b30-0c25-4ced-a937-5d35e7df1ee9'"} device-1 | {"content":{"candidate":"candidate:2835391991 1 udp 2113937151 bfece2fd-7da9-4f25-b827-e71559ccfae9.local 36615 typ host generation 0 ufrag oS0z network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"709fa53b-57b8-44ac-aa50-e8e948f40081","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:975897828 1 udp 1677729535 141.24.211.56 36615 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag oS0z network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"709fa53b-57b8-44ac-aa50-e8e948f40081","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"709fa53b-57b8-44ac-aa50-e8e948f40081","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/709fa53b-57b8-44ac-aa50-e8e948f40081'"} device-1 | {"device":"6df14b30-0c25-4ced-a937-5d35e7df1ee9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"6df14b30-0c25-4ced-a937-5d35e7df1ee9","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/d28f5cab-ed40-4dea-8f40-0874d8f99746' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d28f5cab-ed40-4dea-8f40-0874d8f99746","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"709fa53b-57b8-44ac-aa50-e8e948f40081","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"709fa53b-57b8-44ac-aa50-e8e948f40081","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"6df14b30-0c25-4ced-a937-5d35e7df1ee9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"6df14b30-0c25-4ced-a937-5d35e7df1ee9","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"731ba778bfdd5052b6dba5a0573dada9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"731ba778bfdd5052b6dba5a0573dada9","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/6df14b30-0c25-4ced-a937-5d35e7df1ee9"},{"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/709fa53b-57b8-44ac-aa50-e8e948f40081"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746"}}},"level":"info","message":"received a callback","requestID":"731ba778bfdd5052b6dba5a0573dada9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 14ms","method":"POST","requestID":"731ba778bfdd5052b6dba5a0573dada9","responseTime":14,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"731ba778bfdd5052b6dba5a0573dada9"} device-1 | {"data":{"peerconnection":"d28f5cab-ed40-4dea-8f40-0874d8f99746","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"d28f5cab-ed40-4dea-8f40-0874d8f99746","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/d28f5cab-ed40-4dea-8f40-0874d8f99746' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d28f5cab-ed40-4dea-8f40-0874d8f99746","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"669b00c567c9e876f2bee2df97931039","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"669b00c567c9e876f2bee2df97931039","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/6df14b30-0c25-4ced-a937-5d35e7df1ee9"},{"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/709fa53b-57b8-44ac-aa50-e8e948f40081"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746"}}},"level":"info","message":"received a callback","requestID":"669b00c567c9e876f2bee2df97931039"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1ccad7a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd28f5cab-ed40-4dea-8f40-0874d8f99746","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c81078fa-e023-4db1-b37f-d6e3951dc293","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.007748} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":27,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.1347,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1ccad7a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746","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":"1ccad7a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1ccad7a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746 200 11ms","method":"GET","requestID":"1ccad7a0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"669b00c567c9e876f2bee2df97931039","responseTime":36,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"669b00c567c9e876f2bee2df97931039"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ccf6b80-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2N30.vHsunlXPUcwqrekFnX5a5QjwgtsW1mPkxQgwCX8x6SU","level":"info","message":"auth send jwt","requestID":"f2626d702a9991fc5dbd58ca472892f0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:47Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f2626d702a9991fc5dbd58ca472892f0","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c42b258f-ca6a-4c71-9bea-32ee15f6bf40","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.036954} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":28,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.383775,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:47Z"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e","requestID":"f2626d702a9991fc5dbd58ca472892f0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1ccf6b80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","object_type":"device","rebac_allow":false,"scope_allow":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":"1ccf6b80-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ccf6b80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/signaling 200 10ms","method":"POST","requestID":"1ccf6b80-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":29,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.96824,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1cd16750-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f2626d702a9991fc5dbd58ca472892f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293567,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2N30.vHsunlXPUcwqrekFnX5a5QjwgtsW1mPkxQgwCX8x6SU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f2626d702a9991fc5dbd58ca472892f0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1bf64b71-2a22-4348-9482-766419331ad0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.0501657} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":30,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.222627,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1cd16750-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1cd16750-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e","requestID":"f2626d702a9991fc5dbd58ca472892f0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1cd16750-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/709fa53b-57b8-44ac-aa50-e8e948f40081/signaling 200 9ms","method":"POST","requestID":"1cd16750-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081/signaling"} gateway-1 | {"time_local":"07/Oct/2024:09:32:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f2626d702a9991fc5dbd58ca472892f0"} experiment-1 | {"level":"info","message":"GET /experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e 200 19ms","method":"GET","requestID":"f2626d702a9991fc5dbd58ca472892f0","responseTime":19,"status":200,"url":"/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2N30.vHsunlXPUcwqrekFnX5a5QjwgtsW1mPkxQgwCX8x6SU","level":"info","message":"auth send jwt","requestID":"7fdf0c6f4a08ec03947e24390579a2f5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7fdf0c6f4a08ec03947e24390579a2f5","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e","requestID":"7fdf0c6f4a08ec03947e24390579a2f5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":31,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.275661,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7fdf0c6f4a08ec03947e24390579a2f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293567,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2N30.vHsunlXPUcwqrekFnX5a5QjwgtsW1mPkxQgwCX8x6SU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7fdf0c6f4a08ec03947e24390579a2f5","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Attempting to finish experiment","requestID":"7fdf0c6f4a08ec03947e24390579a2f5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1cd62240-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":32,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.100494,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1cd62240-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293567,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2N30.vHsunlXPUcwqrekFnX5a5QjwgtsW1mPkxQgwCX8x6SU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1cd62240-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746","device":"6df14b30-0c25-4ced-a937-5d35e7df1ee9","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746","device":"709fa53b-57b8-44ac-aa50-e8e948f40081","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/d28f5cab-ed40-4dea-8f40-0874d8f99746' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d28f5cab-ed40-4dea-8f40-0874d8f99746","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"16566ccf5611e8b17a83144bbe166f9e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"16566ccf5611e8b17a83144bbe166f9e","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2e7ff47419e9f0ade71b44eb42a322c6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9"},{"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/709fa53b-57b8-44ac-aa50-e8e948f40081"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746"}}},"level":"info","message":"received a callback","requestID":"16566ccf5611e8b17a83144bbe166f9e"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2e7ff47419e9f0ade71b44eb42a322c6","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":"connected","url":"http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9"},{"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/709fa53b-57b8-44ac-aa50-e8e948f40081"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746"}}},"level":"info","message":"received a callback","requestID":"2e7ff47419e9f0ade71b44eb42a322c6"} device-1 | {"data":{"peerconnection":"d28f5cab-ed40-4dea-8f40-0874d8f99746","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd28f5cab-ed40-4dea-8f40-0874d8f99746': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd28f5cab-ed40-4dea-8f40-0874d8f99746","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"79af002f-8283-49fa-b499-19549c4b24dd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.107945} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"90400647-f157-46e3-8796-efa89e7fb3d7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.1081502} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"1cd62240-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1cd62240-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746 204 48ms","method":"DELETE","requestID":"1cd62240-848f-11ef-9233-95baf63f17e0","responseTime":48,"status":204,"url":"/peerconnections/d28f5cab-ed40-4dea-8f40-0874d8f99746"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"},"level":"info","message":"Successfully finished experiment","requestID":"7fdf0c6f4a08ec03947e24390579a2f5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ce05b70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6df14b30-0c25-4ced-a937-5d35e7df1ee9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef203d33-b94a-40c0-8e13-d7be90967ef8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.1521342} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":33,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.682704,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1ce05b70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9","object_type":"device","rebac_allow":false,"scope_allow":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":"1ce05b70-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ce05b70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/signaling 200 14ms","method":"POST","requestID":"1ce05b70-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1ce2f380-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F709fa53b-57b8-44ac-aa50-e8e948f40081","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aee2cf35-a179-463b-a9b5-c1e7b68ee4e6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.1652036} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":34,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.03862,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1ce2f380-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/709fa53b-57b8-44ac-aa50-e8e948f40081","object_type":"device","rebac_allow":false,"scope_allow":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":"1ce2f380-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8f584edd-4d4a-4ec2-8975-304dd41e632e': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8f584edd-4d4a-4ec2-8975-304dd41e632e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"06cc7726-d172-4be8-aed0-2b6a7f44ed2b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.1673985} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b302faae-a5e2-4239-aa57-62c800d2cd6f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.1676657} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"7fdf0c6f4a08ec03947e24390579a2f5","responseTime":29,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1ce2f380-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/709fa53b-57b8-44ac-aa50-e8e948f40081/signaling 200 11ms","method":"POST","requestID":"1ce2f380-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/709fa53b-57b8-44ac-aa50-e8e948f40081/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e","requestID":"7fdf0c6f4a08ec03947e24390579a2f5"} gateway-1 | {"time_local":"07/Oct/2024:09:32:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.189","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7fdf0c6f4a08ec03947e24390579a2f5"} experiment-1 | {"level":"info","message":"DELETE /experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e 204 187ms","method":"DELETE","requestID":"7fdf0c6f4a08ec03947e24390579a2f5","responseTime":187,"status":204,"url":"/experiments/8f584edd-4d4a-4ec2-8975-304dd41e632e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 155ms","method":"POST","requestID":"16566ccf5611e8b17a83144bbe166f9e","responseTime":155,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.158","http_referrer":"","http_user_agent":"node-fetch","requestID":"16566ccf5611e8b17a83144bbe166f9e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 154ms","method":"POST","requestID":"2e7ff47419e9f0ade71b44eb42a322c6","responseTime":154,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.160","http_referrer":"","http_user_agent":"node-fetch","requestID":"2e7ff47419e9f0ade71b44eb42a322c6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2N30.vHsunlXPUcwqrekFnX5a5QjwgtsW1mPkxQgwCX8x6SU","level":"info","message":"auth send jwt","requestID":"ad0744e5b1aebafe12739090954fb01a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ad0744e5b1aebafe12739090954fb01a","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:32:47 +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.100","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8faa2ae7c2cdd841609ab98fe5320f9d"} device-1 | {"level":"info","message":"postDevices called","requestID":"ad0744e5b1aebafe12739090954fb01a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":35,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.981901,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:47Z"} gateway-1 | {"time_local":"07/Oct/2024:09:32:47 +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.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":"7061133df99e7a356e2c45882b031f30"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ad0744e5b1aebafe12739090954fb01a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293567,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2N30.vHsunlXPUcwqrekFnX5a5QjwgtsW1mPkxQgwCX8x6SU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ad0744e5b1aebafe12739090954fb01a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6df14b30-0c25-4ced-a937-5d35e7df1ee9' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"644aee35-2f3e-494c-b3bc-cbfef29ba14d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.2769606} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ad0744e5b1aebafe12739090954fb01a","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/709fa53b-57b8-44ac-aa50-e8e948f40081' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2386a46d-c1dd-43f2-9233-4d891d4b910b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.2830446} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ad0744e5b1aebafe12739090954fb01a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"d903a23f-dfb7-43cb-b09d-bd5db885055a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.2933643} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f686e67-ab15-4fc5-9faa-5b48428625be","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.2935722} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"ad0744e5b1aebafe12739090954fb01a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.293353177Z"}]},"request_id":"35d619e0-8c51-4527-979e-bbe3fbebcca7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.2979188} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ad0744e5b1aebafe12739090954fb01a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ad0744e5b1aebafe12739090954fb01a"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"ad0744e5b1aebafe12739090954fb01a","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:32:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad0744e5b1aebafe12739090954fb01a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2N30.vHsunlXPUcwqrekFnX5a5QjwgtsW1mPkxQgwCX8x6SU","level":"info","message":"auth send jwt","requestID":"a35e389fc758429289a7d17700222c7f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a35e389fc758429289a7d17700222c7f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a35e389fc758429289a7d17700222c7f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":36,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.649395,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a35e389fc758429289a7d17700222c7f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293567,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2N30.vHsunlXPUcwqrekFnX5a5QjwgtsW1mPkxQgwCX8x6SU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a35e389fc758429289a7d17700222c7f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e32bcc2b-5f42-48cb-8ddd-db462a8f5906","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.3232555} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a35e389fc758429289a7d17700222c7f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7954d9aa-1643-4897-9680-5d858462ddf4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.3279917} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a35e389fc758429289a7d17700222c7f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"e8b8f604-095f-45e6-bdd6-e70d424a90bf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.3448098} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7185857-36ea-4b8c-b912-179ed25e28e4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.3449414} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"a35e389fc758429289a7d17700222c7f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.344798481Z"}]},"request_id":"c0883360-cb03-43a1-a49c-1d564f9111b3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.3501496} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a35e389fc758429289a7d17700222c7f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a35e389fc758429289a7d17700222c7f"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"a35e389fc758429289a7d17700222c7f","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a35e389fc758429289a7d17700222c7f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2N30.vHsunlXPUcwqrekFnX5a5QjwgtsW1mPkxQgwCX8x6SU","level":"info","message":"auth send jwt","requestID":"35cd748485112573d713fe57e2fe827a"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"35cd748485112573d713fe57e2fe827a","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"35cd748485112573d713fe57e2fe827a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":37,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.074506,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"35cd748485112573d713fe57e2fe827a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293567,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2N30.vHsunlXPUcwqrekFnX5a5QjwgtsW1mPkxQgwCX8x6SU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"35cd748485112573d713fe57e2fe827a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.344798481Z"}]},"request_id":"49999715-ff1e-4b3e-8244-552845dbb0e9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.9292383} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"35cd748485112573d713fe57e2fe827a","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9c373085-145e-4002-bd99-006d7a690b10","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.937316} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"35cd748485112573d713fe57e2fe827a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.344798481Z"}]},"request_id":"c1296177-e682-4c2e-8793-ef5696899420","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293567.9541438} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"35cd748485112573d713fe57e2fe827a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"35cd748485112573d713fe57e2fe827a"} device-1 | {"level":"info","message":"PATCH /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668 200 44ms","method":"PATCH","requestID":"35cd748485112573d713fe57e2fe827a","responseTime":44,"status":200,"url":"/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668"} gateway-1 | {"time_local":"07/Oct/2024:09:32:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.052","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"35cd748485112573d713fe57e2fe827a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2N30.vHsunlXPUcwqrekFnX5a5QjwgtsW1mPkxQgwCX8x6SU","level":"info","message":"auth send jwt","requestID":"82d62b6af82d7576992a7e7cc1839567"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"82d62b6af82d7576992a7e7cc1839567","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"82d62b6af82d7576992a7e7cc1839567"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":38,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.224009,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"82d62b6af82d7576992a7e7cc1839567","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293567,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2N30.vHsunlXPUcwqrekFnX5a5QjwgtsW1mPkxQgwCX8x6SU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"82d62b6af82d7576992a7e7cc1839567","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"82d62b6af82d7576992a7e7cc1839567"} gateway-1 | {"time_local":"07/Oct/2024:09:32:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668/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.9","requestID":"82d62b6af82d7576992a7e7cc1839567"} device-1 | {"level":"info","message":"POST /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668/websocket 200 22ms","method":"POST","requestID":"82d62b6af82d7576992a7e7cc1839567","responseTime":22,"status":200,"url":"/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8cfc8c73ce081ab72141e65459de45d2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"8cfc8c73ce081ab72141e65459de45d2","responseTime":3,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/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":"8cfc8c73ce081ab72141e65459de45d2"} device-1 | {"level":"info","message":"OPTIONS /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/websocket 200 2ms","method":"OPTIONS","requestID":"8cfc8c73ce081ab72141e65459de45d2","responseTime":2,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs","level":"info","message":"auth send jwt","requestID":"0ca150e95897f760ef491c1b20b3f28a"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"0ca150e95897f760ef491c1b20b3f28a","responseTime":9,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0ca150e95897f760ef491c1b20b3f28a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":39,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.280092,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0ca150e95897f760ef491c1b20b3f28a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0ca150e95897f760ef491c1b20b3f28a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0ca150e95897f760ef491c1b20b3f28a"} gateway-1 | {"time_local":"07/Oct/2024:09:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/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":"0ca150e95897f760ef491c1b20b3f28a"} device-1 | {"level":"info","message":"POST /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/websocket 200 25ms","method":"POST","requestID":"0ca150e95897f760ef491c1b20b3f28a","responseTime":25,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b7a7052de3557ce88b25510b73d0f0a8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"b7a7052de3557ce88b25510b73d0f0a8","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd? 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":"b7a7052de3557ce88b25510b73d0f0a8"} device-1 | {"level":"info","message":"OPTIONS /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd? 200 1ms","method":"OPTIONS","requestID":"b7a7052de3557ce88b25510b73d0f0a8","responseTime":1,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs","level":"info","message":"auth send jwt","requestID":"6395bf5a914dee66dcb4d980eee462e5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6395bf5a914dee66dcb4d980eee462e5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6395bf5a914dee66dcb4d980eee462e5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":40,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.348787,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6395bf5a914dee66dcb4d980eee462e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6395bf5a914dee66dcb4d980eee462e5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.293353177Z"}]},"request_id":"1a50ff9b-2d25-44df-84d0-a7f6564b9ee6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.4655235} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"6395bf5a914dee66dcb4d980eee462e5","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"baae66e8-ab74-4c2a-abfa-b4e93d97530f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.4799294} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"6395bf5a914dee66dcb4d980eee462e5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.293353177Z"}]},"request_id":"40b6ed52-a217-4acf-8920-5bd7aca31b71","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.4941752} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6395bf5a914dee66dcb4d980eee462e5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6395bf5a914dee66dcb4d980eee462e5"} gateway-1 | {"time_local":"07/Oct/2024:09:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.064","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6395bf5a914dee66dcb4d980eee462e5"} device-1 | {"level":"info","message":"PATCH /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd? 200 57ms","method":"PATCH","requestID":"6395bf5a914dee66dcb4d980eee462e5","responseTime":57,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs","level":"info","message":"auth send jwt","requestID":"091d4b810d783ef14f98f9e814656292"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"091d4b810d783ef14f98f9e814656292","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"091d4b810d783ef14f98f9e814656292"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":41,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.295385,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"091d4b810d783ef14f98f9e814656292","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"091d4b810d783ef14f98f9e814656292","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.293353177Z"}]},"request_id":"4f90a662-7be4-4e68-b52e-4986ae318eea","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.5345905} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"091d4b810d783ef14f98f9e814656292","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"091d4b810d783ef14f98f9e814656292"} device-1 | {"level":"info","message":"GET /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd? 200 18ms","method":"GET","requestID":"091d4b810d783ef14f98f9e814656292","responseTime":18,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd?"} gateway-1 | {"time_local":"07/Oct/2024:09:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd? 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":"091d4b810d783ef14f98f9e814656292"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs","level":"info","message":"auth send jwt","requestID":"9adea7d82ba12e83462ea3e8801adb67"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9adea7d82ba12e83462ea3e8801adb67","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9adea7d82ba12e83462ea3e8801adb67"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":42,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.291977,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9adea7d82ba12e83462ea3e8801adb67","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9adea7d82ba12e83462ea3e8801adb67","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.344798481Z"}]},"request_id":"44ac5642-b082-497b-8236-0fae6a149820","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.559425} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9adea7d82ba12e83462ea3e8801adb67","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9adea7d82ba12e83462ea3e8801adb67"} gateway-1 | {"time_local":"07/Oct/2024:09:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668? 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":"9adea7d82ba12e83462ea3e8801adb67"} device-1 | {"level":"info","message":"GET /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668? 200 17ms","method":"GET","requestID":"9adea7d82ba12e83462ea3e8801adb67","responseTime":17,"status":200,"url":"/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs","level":"info","message":"auth send jwt","requestID":"79705aa878b81432dd4a1509ee04019c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"79705aa878b81432dd4a1509ee04019c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"79705aa878b81432dd4a1509ee04019c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":43,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.37433,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"79705aa878b81432dd4a1509ee04019c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"79705aa878b81432dd4a1509ee04019c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Attempting to run experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Attempting to book experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Successfully booked experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e5b3ba0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e5bb0d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":44,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.789313,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Received request.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e5b3ba0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1e5b3ba0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Sent response.","req_id":45,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.992442,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e5bb0d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1e5bb0d0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.293353177Z"}]},"request_id":"21d0b341-7330-401e-b8f2-91c023819897","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.6398036} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"1e5b3ba0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.344798481Z"}]},"request_id":"7b213717-ce23-4f7a-9a97-76f7d1cf1730","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.6413782} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1e5bb0d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e5b3ba0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd? 200 23ms","method":"GET","requestID":"1e5b3ba0-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e5bb0d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668? 200 22ms","method":"GET","requestID":"1e5bb0d0-848f-11ef-9233-95baf63f17e0","responseTime":22,"status":200,"url":"/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Setting up experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Successfully locked booking for experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Attempting to update booking for experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Successfully updated booking for experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Successfully set up experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e68f740-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e694560-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e69ba90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Successfully running experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":46,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.78936,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Received request.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e68f740-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"1e68f740-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Sent response.","req_id":47,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.387157,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e694560-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"1e694560-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.293353177Z"}]},"request_id":"cc4f8825-5a36-480d-b42e-7cd51ab527fe","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.7376335} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1e68f740-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.344798481Z"}]},"request_id":"dee30f0b-ec4a-48fc-a2c9-d40336586015","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.7397928} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"1e694560-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51824","level":"info","msg":"Received request.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0acdc52d-7277-4bc3-a4e7-a8d263398f55","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.7454302} authorization-1 | {"client_addr":"127.0.0.1:51824","level":"info","msg":"Sent response.","req_id":48,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.812304,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e68f740-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e69ba90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","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 /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd? 200 33ms","method":"GET","requestID":"1e68f740-848f-11ef-9233-95baf63f17e0","responseTime":33,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd?"} authorization-1 | {"level":"info","message":"POST /authorize 200 21ms","method":"POST","requestID":"1e69ba90-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e694560-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668? 200 37ms","method":"GET","requestID":"1e694560-848f-11ef-9233-95baf63f17e0","responseTime":37,"status":200,"url":"/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd2f5db2e-c31f-4ac2-a532-3d57dddc77ed#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd2f5db2e-c31f-4ac2-a532-3d57dddc77ed","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"a73c6a70-7d00-40a4-8101-2adc5f0d38f5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.7554176} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c3efd87c-d0e3-4e7b-afe3-8f2a427ffc8d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.7558} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e69ba90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/signaling 200 37ms","method":"POST","requestID":"1e69ba90-848f-11ef-9233-95baf63f17e0","responseTime":37,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"79705aa878b81432dd4a1509ee04019c","responseTime":26,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e6fd510-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e709860-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c7f3c00b-2be4-4f75-95f8-b085b4b85b1d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.7702909} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":49,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.402504,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Received request.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e6fd510-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","object_type":"device","rebac_allow":false,"scope_allow":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":"1e6fd510-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aee1e3de-e3f6-410a-9c86-f4d786cf8b5d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.7752237} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Sent response.","req_id":50,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.215588,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e709860-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","object_type":"device","rebac_allow":false,"scope_allow":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":"1e709860-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"79705aa878b81432dd4a1509ee04019c"} gateway-1 | {"time_local":"07/Oct/2024:09:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.211","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"79705aa878b81432dd4a1509ee04019c"} experiment-1 | {"level":"info","message":"POST /experiments? 201 205ms","method":"POST","requestID":"79705aa878b81432dd4a1509ee04019c","responseTime":205,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e6fd510-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/signaling 200 21ms","method":"POST","requestID":"1e6fd510-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e709860-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668/signaling 200 19ms","method":"POST","requestID":"1e709860-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e73a5a0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs","level":"info","message":"auth send jwt","requestID":"03fc7b1b9d9b71c2dc6949df6df4535b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"03fc7b1b9d9b71c2dc6949df6df4535b","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"03fc7b1b9d9b71c2dc6949df6df4535b"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"168658e7-7630-4397-8b84-64f8d9592a43","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.7943852} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":51,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.878477,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e73a5a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","object_type":"device","rebac_allow":false,"scope_allow":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":"1e73a5a0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Received request.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Sent response.","req_id":52,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.003713,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"03fc7b1b9d9b71c2dc6949df6df4535b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"03fc7b1b9d9b71c2dc6949df6df4535b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e73a5a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668/signaling 200 20ms","method":"POST","requestID":"1e73a5a0-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.293353177Z"}]},"request_id":"93066c85-0f57-46df-9be2-06af5a3275e9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.80714} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"03fc7b1b9d9b71c2dc6949df6df4535b","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e777630-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e77c450-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"03fc7b1b9d9b71c2dc6949df6df4535b"} gateway-1 | {"time_local":"07/Oct/2024:09:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"03fc7b1b9d9b71c2dc6949df6df4535b"} device-1 | {"level":"info","message":"GET /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd? 200 26ms","method":"GET","requestID":"03fc7b1b9d9b71c2dc6949df6df4535b","responseTime":26,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":53,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.717246,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e777630-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1e777630-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Received request.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51812","level":"info","msg":"Sent response.","req_id":54,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.332874,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e77c450-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"1e77c450-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs","level":"info","message":"auth send jwt","requestID":"d76ec3303ca61e1a3ecc3ee7ff91a3cf"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d76ec3303ca61e1a3ecc3ee7ff91a3cf","responseTime":6,"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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.293353177Z"}]},"request_id":"301d0c72-301f-4d0d-a990-9f0fbcda37a3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.8281314} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1e777630-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d76ec3303ca61e1a3ecc3ee7ff91a3cf"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.344798481Z"}]},"request_id":"0f5260ef-5bc5-4453-9a2e-522a52a1a654","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.8314507} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e777630-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1e77c450-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":55,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.845985,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} device-1 | {"level":"info","message":"GET /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd? 200 23ms","method":"GET","requestID":"1e777630-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d76ec3303ca61e1a3ecc3ee7ff91a3cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d76ec3303ca61e1a3ecc3ee7ff91a3cf","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e77c450-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668? 200 26ms","method":"GET","requestID":"1e77c450-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:47.344798481Z"}]},"request_id":"a0edd099-6b0e-41d8-806e-e809f24922b6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.839631} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d76ec3303ca61e1a3ecc3ee7ff91a3cf","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Building connection plan","requestID":"79705aa878b81432dd4a1509ee04019c"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"fc16a8d4-7e0c-4ad1-b998-f305aeefcd87"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"e1d17b37-fa47-4f8f-8578-bb281c08afe0"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"0f9083f5-96ad-4b60-aeb3-852efb64c02e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"79705aa878b81432dd4a1509ee04019c"} 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/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd"},{"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/73bfe1db-e71b-4349-b0ab-a8cd88374668"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"79705aa878b81432dd4a1509ee04019c"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"1e7c7f40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d76ec3303ca61e1a3ecc3ee7ff91a3cf"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} gateway-1 | {"time_local":"07/Oct/2024:09:32:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668? 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":"d76ec3303ca61e1a3ecc3ee7ff91a3cf"} device-1 | {"level":"info","message":"GET /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668? 200 18ms","method":"GET","requestID":"d76ec3303ca61e1a3ecc3ee7ff91a3cf","responseTime":18,"status":200,"url":"/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":56,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.956903,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e7c7f40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293569,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU2OX0.WBlAwUN9qjOvNCvL1BvSUlRFKTUGhv21AGCbaqZ-UVs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1e7c7f40-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"29a048a2-063b-4c1c-b3f6-348b5451c1b2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.8592277} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5afb41c2-4059-44cf-87c9-cac14de07d74","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.8595228} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"1e7c7f40-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"1e7c7f40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"1e7c7f40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7'","requestID":"1e7c7f40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7'","requestID":"1e7c7f40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"1e7c7f40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 33ms","method":"POST","requestID":"1e7c7f40-848f-11ef-9233-95baf63f17e0","responseTime":33,"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":"1e7c7f40-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"79705aa878b81432dd4a1509ee04019c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e86b870-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b998ade0-6ee6-4b39-974f-5c5dc5710ebf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.9180226} device-1 | {"device":"1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":57,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.25192,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e86b870-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","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":"1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"1e86b870-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e86b870-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/signaling 200 16ms","method":"POST","requestID":"1e86b870-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1e899ea0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"269c0f22-4b9c-49f8-9e90-6608fb2a70a9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293569.9353054} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":58,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.334698,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e899ea0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","object_type":"device","rebac_allow":false,"scope_allow":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":"1e899ea0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1e899ea0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668/signaling 200 9ms","method":"POST","requestID":"1e899ea0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668/signaling"} device-1 | {"device":"73bfe1db-e71b-4349-b0ab-a8cd88374668","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":"51385c17-88cf-43ff-be31-bba92db07af7","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 4026293143682531458 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:eO8k\r\na=ice-pwd:MJVmLUFXBG7RsE3V8QRntZex\r\na=ice-options:trickle\r\na=fingerprint:sha-256 A9:54:5B:6F:87:D0:E4:3A:D0:71:F7:B0:EF:91:BF:96:C5:28:0B:CC:59:BB:D9:11:E6:23:37:2D:43:39:6A:97\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3504671118 1 udp 2113937151 69fe3b26-a0f7-4af6-baeb-285005707142.local 59705 typ host generation 0 ufrag eO8k network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:4072376067 1 udp 1677729535 141.24.211.56 59705 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag eO8k network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","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/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd'"} device-1 | {"device":"1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","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/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"51385c17-88cf-43ff-be31-bba92db07af7","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"73bfe1db-e71b-4349-b0ab-a8cd88374668","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":"73bfe1db-e71b-4349-b0ab-a8cd88374668","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":"73bfe1db-e71b-4349-b0ab-a8cd88374668","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"36c0afbdf7f0d6374842cdcb6f51e104","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"36c0afbdf7f0d6374842cdcb6f51e104","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd"},{"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/73bfe1db-e71b-4349-b0ab-a8cd88374668"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7"}}},"level":"info","message":"received a callback","requestID":"36c0afbdf7f0d6374842cdcb6f51e104"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"36c0afbdf7f0d6374842cdcb6f51e104","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"36c0afbdf7f0d6374842cdcb6f51e104"} device-1 | {"data":{"peerconnection":"51385c17-88cf-43ff-be31-bba92db07af7","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"73bfe1db-e71b-4349-b0ab-a8cd88374668","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":"1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"73bfe1db-e71b-4349-b0ab-a8cd88374668","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":"51385c17-88cf-43ff-be31-bba92db07af7","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","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/51385c17-88cf-43ff-be31-bba92db07af7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"51385c17-88cf-43ff-be31-bba92db07af7","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"da32dd6c1b5e29eadf5c02b340bd09a2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"da32dd6c1b5e29eadf5c02b340bd09a2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd"},{"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/73bfe1db-e71b-4349-b0ab-a8cd88374668"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7"}}},"level":"info","message":"received a callback","requestID":"da32dd6c1b5e29eadf5c02b340bd09a2"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"1fc63d50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F51385c17-88cf-43ff-be31-bba92db07af7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ac5f0fe2-0097-4960-9f35-58029182e7a9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.0124533} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":59,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.185717,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1fc63d50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7","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":"1fc63d50-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"1fc63d50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/51385c17-88cf-43ff-be31-bba92db07af7 200 13ms","method":"GET","requestID":"1fc63d50-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"da32dd6c1b5e29eadf5c02b340bd09a2","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.045","http_referrer":"","http_user_agent":"node-fetch","requestID":"da32dd6c1b5e29eadf5c02b340bd09a2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1fcbbb90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"895f2118-61e2-4e20-8d34-f24f30d45b1d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.045849} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":60,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.100838,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1fcbbb90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1fcbbb90-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1fcbbb90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/signaling 200 10ms","method":"POST","requestID":"1fcbbb90-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1fcdb760-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1219144b-cb70-4fdf-88e4-9dd610f7f05e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.059631} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":61,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.948443,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1fcdb760-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","object_type":"device","rebac_allow":false,"scope_allow":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":"1fcdb760-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1fcdb760-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668/signaling 200 11ms","method":"POST","requestID":"1fcdb760-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3Mn0.QuYGwl0BJmsHbAWze7UzwZkDOstceR5O3kf8QeQbIgo","level":"info","message":"auth send jwt","requestID":"296ddadcc86d1d256064d3da1d91c9d6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"296ddadcc86d1d256064d3da1d91c9d6","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed","requestID":"296ddadcc86d1d256064d3da1d91c9d6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":62,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.227511,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"296ddadcc86d1d256064d3da1d91c9d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293572,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3Mn0.QuYGwl0BJmsHbAWze7UzwZkDOstceR5O3kf8QeQbIgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"296ddadcc86d1d256064d3da1d91c9d6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed","requestID":"296ddadcc86d1d256064d3da1d91c9d6"} gateway-1 | {"time_local":"07/Oct/2024:09:32:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.026","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"296ddadcc86d1d256064d3da1d91c9d6"} experiment-1 | {"level":"info","message":"GET /experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed 200 19ms","method":"GET","requestID":"296ddadcc86d1d256064d3da1d91c9d6","responseTime":19,"status":200,"url":"/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3Mn0.QuYGwl0BJmsHbAWze7UzwZkDOstceR5O3kf8QeQbIgo","level":"info","message":"auth send jwt","requestID":"8a12258f7afe96779bf1b32f1238da28"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8a12258f7afe96779bf1b32f1238da28","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed","requestID":"8a12258f7afe96779bf1b32f1238da28"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":63,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.256106,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8a12258f7afe96779bf1b32f1238da28","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293572,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3Mn0.QuYGwl0BJmsHbAWze7UzwZkDOstceR5O3kf8QeQbIgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8a12258f7afe96779bf1b32f1238da28","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Attempting to finish experiment","requestID":"8a12258f7afe96779bf1b32f1238da28"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"1fda1370-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":64,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.270208,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1fda1370-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293572,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3Mn0.QuYGwl0BJmsHbAWze7UzwZkDOstceR5O3kf8QeQbIgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1fda1370-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7","device":"1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"73bfe1db-e71b-4349-b0ab-a8cd88374668","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":"73bfe1db-e71b-4349-b0ab-a8cd88374668","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":"73bfe1db-e71b-4349-b0ab-a8cd88374668","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/51385c17-88cf-43ff-be31-bba92db07af7' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"51385c17-88cf-43ff-be31-bba92db07af7","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F51385c17-88cf-43ff-be31-bba92db07af7': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F51385c17-88cf-43ff-be31-bba92db07af7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"018a4a5a-5665-4cc0-8384-51fa5f78cafa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.1569955} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b7601825-ef0e-4cad-9483-8ca91ddbe651","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.157193} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ecabf0f7d5336f2f9b21b67453282f0a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ecabf0f7d5336f2f9b21b67453282f0a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"1fda1370-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"346de789c975636344c92b5128fbf966","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"346de789c975636344c92b5128fbf966","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd"},{"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/73bfe1db-e71b-4349-b0ab-a8cd88374668"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7"}}},"level":"info","message":"received a callback","requestID":"ecabf0f7d5336f2f9b21b67453282f0a"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd"},{"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/73bfe1db-e71b-4349-b0ab-a8cd88374668"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7"}}},"level":"info","message":"received a callback","requestID":"346de789c975636344c92b5128fbf966"} device-1 | {"data":{"peerconnection":"51385c17-88cf-43ff-be31-bba92db07af7","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"1fda1370-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/51385c17-88cf-43ff-be31-bba92db07af7 204 48ms","method":"DELETE","requestID":"1fda1370-848f-11ef-9233-95baf63f17e0","responseTime":48,"status":204,"url":"/peerconnections/51385c17-88cf-43ff-be31-bba92db07af7"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"},"level":"info","message":"Successfully finished experiment","requestID":"8a12258f7afe96779bf1b32f1238da28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1fe58520-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"38492bc7-4374-4efe-b349-2cd0854864d0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.2180495} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":65,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.837555,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1fe58520-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd","object_type":"device","rebac_allow":false,"scope_allow":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":"1fe58520-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1fe58520-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd2f5db2e-c31f-4ac2-a532-3d57dddc77ed': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd2f5db2e-c31f-4ac2-a532-3d57dddc77ed","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"7673059e-9938-412b-9d18-564a2d53ced7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.2256725} device-1 | {"level":"info","message":"POST /devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/signaling 200 16ms","method":"POST","requestID":"1fe58520-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd/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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b37f1631-02a5-46a2-bb31-d6a10f295ec6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.2266927} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"8a12258f7afe96779bf1b32f1238da28","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"1fe89260-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F73bfe1db-e71b-4349-b0ab-a8cd88374668","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32dd8e10-ac50-4696-a59d-23a7bc8adc34","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.2395077} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":66,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.468721,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1fe89260-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668","object_type":"device","rebac_allow":false,"scope_allow":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":"1fe89260-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"1fe89260-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/73bfe1db-e71b-4349-b0ab-a8cd88374668/signaling 200 18ms","method":"POST","requestID":"1fe89260-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed","requestID":"8a12258f7afe96779bf1b32f1238da28"} gateway-1 | {"time_local":"07/Oct/2024:09:32:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.197","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8a12258f7afe96779bf1b32f1238da28"} experiment-1 | {"level":"info","message":"DELETE /experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed 204 194ms","method":"DELETE","requestID":"8a12258f7afe96779bf1b32f1238da28","responseTime":194,"status":204,"url":"/experiments/d2f5db2e-c31f-4ac2-a532-3d57dddc77ed"} gateway-1 | {"time_local":"07/Oct/2024:09:32:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3030","request_time":"4.322","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"b704cf55b1ea61193bdf2f183d851c47"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 155ms","method":"POST","requestID":"ecabf0f7d5336f2f9b21b67453282f0a","responseTime":155,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.159","http_referrer":"","http_user_agent":"node-fetch","requestID":"ecabf0f7d5336f2f9b21b67453282f0a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3Mn0.QuYGwl0BJmsHbAWze7UzwZkDOstceR5O3kf8QeQbIgo","level":"info","message":"auth send jwt","requestID":"632973b892b8a810da81dceb3bec4a4a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 153ms","method":"POST","requestID":"346de789c975636344c92b5128fbf966","responseTime":153,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.160","http_referrer":"","http_user_agent":"node-fetch","requestID":"346de789c975636344c92b5128fbf966"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"632973b892b8a810da81dceb3bec4a4a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"632973b892b8a810da81dceb3bec4a4a"} gateway-1 | {"time_local":"07/Oct/2024:09:32:52 +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.919","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ee561f0f4b5a081bfe27a0d520d0ad0b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:52Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/73bfe1db-e71b-4349-b0ab-a8cd88374668' closed"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":67,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.062176,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"632973b892b8a810da81dceb3bec4a4a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293572,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3Mn0.QuYGwl0BJmsHbAWze7UzwZkDOstceR5O3kf8QeQbIgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"632973b892b8a810da81dceb3bec4a4a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1e2e1099-5f7e-44ae-b906-c4ba7a96cbcd' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b74c9db0-5ad6-4ebe-b805-de0742cabd39","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.341541} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"632973b892b8a810da81dceb3bec4a4a","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a531278d-f035-45f4-9cde-13e5b57975c9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.347865} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"632973b892b8a810da81dceb3bec4a4a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"ac28ba72-f23f-4213-bb75-22ab26a878af","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.3578029} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b706f7d8-51a7-4b0b-808c-63f64dad3882","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.3580713} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"632973b892b8a810da81dceb3bec4a4a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.357788957Z"}]},"request_id":"15bca878-5fe5-4c35-9a43-e019b34166c9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.362959} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"632973b892b8a810da81dceb3bec4a4a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"632973b892b8a810da81dceb3bec4a4a"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"632973b892b8a810da81dceb3bec4a4a"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"632973b892b8a810da81dceb3bec4a4a","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3Mn0.QuYGwl0BJmsHbAWze7UzwZkDOstceR5O3kf8QeQbIgo","level":"info","message":"auth send jwt","requestID":"f74e553a98f836e07f7955eeefacd5a1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f74e553a98f836e07f7955eeefacd5a1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f74e553a98f836e07f7955eeefacd5a1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":68,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.712817,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f74e553a98f836e07f7955eeefacd5a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293572,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3Mn0.QuYGwl0BJmsHbAWze7UzwZkDOstceR5O3kf8QeQbIgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f74e553a98f836e07f7955eeefacd5a1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"48efbe7d-4f4e-45de-9582-4928b00d7452","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.3928728} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f74e553a98f836e07f7955eeefacd5a1","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b8bf58f-8cfc-4bc8-8757-0bc44ae74219","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.3983147} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f74e553a98f836e07f7955eeefacd5a1","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"108ce076-f200-4bc0-b51e-2460b3260027","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.4093814} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c85a121e-5628-4a11-89c4-d8406ce1e3bd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.4096038} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"f74e553a98f836e07f7955eeefacd5a1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.409367443Z"}]},"request_id":"cd6abbc4-8bf0-444d-8ec9-8374c3d83158","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.4142873} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f74e553a98f836e07f7955eeefacd5a1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f74e553a98f836e07f7955eeefacd5a1"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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":"f74e553a98f836e07f7955eeefacd5a1"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"f74e553a98f836e07f7955eeefacd5a1","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3Mn0.QuYGwl0BJmsHbAWze7UzwZkDOstceR5O3kf8QeQbIgo","level":"info","message":"auth send jwt","requestID":"021919831cc16d28d6a895d7173fbd37"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"021919831cc16d28d6a895d7173fbd37","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"021919831cc16d28d6a895d7173fbd37"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":69,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.386992,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"021919831cc16d28d6a895d7173fbd37","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293572,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3Mn0.QuYGwl0BJmsHbAWze7UzwZkDOstceR5O3kf8QeQbIgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"021919831cc16d28d6a895d7173fbd37","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.357788957Z"}]},"request_id":"2d0dd7ac-a52e-4e53-88a7-bb1eadbaad66","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.9024189} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"021919831cc16d28d6a895d7173fbd37","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0522e6d7-1d15-41b5-95d2-839e7398feef","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.911816} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"021919831cc16d28d6a895d7173fbd37","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.357788957Z"}]},"request_id":"dde10e9b-27b2-40a1-9781-1809b0ec9e27","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293572.9251857} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"021919831cc16d28d6a895d7173fbd37","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"021919831cc16d28d6a895d7173fbd37"} device-1 | {"level":"info","message":"PATCH /devices/b03c3c27-3124-446f-abc8-7b1888c9c092 200 42ms","method":"PATCH","requestID":"021919831cc16d28d6a895d7173fbd37","responseTime":42,"status":200,"url":"/devices/b03c3c27-3124-446f-abc8-7b1888c9c092"} gateway-1 | {"time_local":"07/Oct/2024:09:32:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b03c3c27-3124-446f-abc8-7b1888c9c092 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.050","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"021919831cc16d28d6a895d7173fbd37"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3Mn0.QuYGwl0BJmsHbAWze7UzwZkDOstceR5O3kf8QeQbIgo","level":"info","message":"auth send jwt","requestID":"e373ed6b4c4bb95f07e9619ca66b6e31"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e373ed6b4c4bb95f07e9619ca66b6e31","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e373ed6b4c4bb95f07e9619ca66b6e31"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":70,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.251163,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e373ed6b4c4bb95f07e9619ca66b6e31","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293572,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3Mn0.QuYGwl0BJmsHbAWze7UzwZkDOstceR5O3kf8QeQbIgo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e373ed6b4c4bb95f07e9619ca66b6e31","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e373ed6b4c4bb95f07e9619ca66b6e31"} device-1 | {"level":"info","message":"POST /devices/b03c3c27-3124-446f-abc8-7b1888c9c092/websocket 200 23ms","method":"POST","requestID":"e373ed6b4c4bb95f07e9619ca66b6e31","responseTime":23,"status":200,"url":"/devices/b03c3c27-3124-446f-abc8-7b1888c9c092/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:32:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b03c3c27-3124-446f-abc8-7b1888c9c092/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.9","requestID":"e373ed6b4c4bb95f07e9619ca66b6e31"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4e75f1d8badb4fa2dbbf1f5c1da5f929","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4e75f1d8badb4fa2dbbf1f5c1da5f929","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/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":"4e75f1d8badb4fa2dbbf1f5c1da5f929"} device-1 | {"level":"info","message":"OPTIONS /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/websocket 200 1ms","method":"OPTIONS","requestID":"4e75f1d8badb4fa2dbbf1f5c1da5f929","responseTime":1,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154","level":"info","message":"auth send jwt","requestID":"d4e92da0e638e3a9739ea3df42dd6563"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d4e92da0e638e3a9739ea3df42dd6563","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d4e92da0e638e3a9739ea3df42dd6563"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":71,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.309485,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d4e92da0e638e3a9739ea3df42dd6563","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d4e92da0e638e3a9739ea3df42dd6563","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d4e92da0e638e3a9739ea3df42dd6563"} gateway-1 | {"time_local":"07/Oct/2024:09:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/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":"d4e92da0e638e3a9739ea3df42dd6563"} device-1 | {"level":"info","message":"POST /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/websocket 200 24ms","method":"POST","requestID":"d4e92da0e638e3a9739ea3df42dd6563","responseTime":24,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d5d84c4d2add6a49f19f3fb8dada2227","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d5d84c4d2add6a49f19f3fb8dada2227","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2? 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":"d5d84c4d2add6a49f19f3fb8dada2227"} device-1 | {"level":"info","message":"OPTIONS /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2? 200 2ms","method":"OPTIONS","requestID":"d5d84c4d2add6a49f19f3fb8dada2227","responseTime":2,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154","level":"info","message":"auth send jwt","requestID":"6cb4107bc6c1236a7680f7ece3ecbfc0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6cb4107bc6c1236a7680f7ece3ecbfc0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6cb4107bc6c1236a7680f7ece3ecbfc0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":72,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.272286,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6cb4107bc6c1236a7680f7ece3ecbfc0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6cb4107bc6c1236a7680f7ece3ecbfc0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.409367443Z"}]},"request_id":"ef4863ec-2403-442e-803b-b1ea852ae28e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.537713} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6cb4107bc6c1236a7680f7ece3ecbfc0","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c96cfcef-dc54-45fa-9922-5921e7d9dead","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.5473826} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"6cb4107bc6c1236a7680f7ece3ecbfc0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.409367443Z"}]},"request_id":"19d79059-da33-4b10-8647-2cca6e1e2a2a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.5608048} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"6cb4107bc6c1236a7680f7ece3ecbfc0","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6cb4107bc6c1236a7680f7ece3ecbfc0"} gateway-1 | {"time_local":"07/Oct/2024:09:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2? 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":"6cb4107bc6c1236a7680f7ece3ecbfc0"} device-1 | {"level":"info","message":"PATCH /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2? 200 49ms","method":"PATCH","requestID":"6cb4107bc6c1236a7680f7ece3ecbfc0","responseTime":49,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154","level":"info","message":"auth send jwt","requestID":"4879057f8b5fd086b33b9e11e036586a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4879057f8b5fd086b33b9e11e036586a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4879057f8b5fd086b33b9e11e036586a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":73,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.353531,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4879057f8b5fd086b33b9e11e036586a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4879057f8b5fd086b33b9e11e036586a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.357788957Z"}]},"request_id":"952f4180-3acc-4e3f-9fd1-50aba6f575bc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.5988278} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4879057f8b5fd086b33b9e11e036586a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4879057f8b5fd086b33b9e11e036586a"} gateway-1 | {"time_local":"07/Oct/2024:09:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b03c3c27-3124-446f-abc8-7b1888c9c092? 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":"4879057f8b5fd086b33b9e11e036586a"} device-1 | {"level":"info","message":"GET /devices/b03c3c27-3124-446f-abc8-7b1888c9c092? 200 21ms","method":"GET","requestID":"4879057f8b5fd086b33b9e11e036586a","responseTime":21,"status":200,"url":"/devices/b03c3c27-3124-446f-abc8-7b1888c9c092?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154","level":"info","message":"auth send jwt","requestID":"d4e6aed68cd236039976762f99db2417"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d4e6aed68cd236039976762f99db2417","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d4e6aed68cd236039976762f99db2417"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":74,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.987389,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d4e6aed68cd236039976762f99db2417","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d4e6aed68cd236039976762f99db2417","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.409367443Z"}]},"request_id":"1b4adc63-4a99-49e6-b6c3-b251b554fda5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.6265209} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d4e6aed68cd236039976762f99db2417","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d4e6aed68cd236039976762f99db2417"} gateway-1 | {"time_local":"07/Oct/2024:09:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2? 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":"d4e6aed68cd236039976762f99db2417"} device-1 | {"level":"info","message":"GET /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2? 200 19ms","method":"GET","requestID":"d4e6aed68cd236039976762f99db2417","responseTime":19,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154","level":"info","message":"auth send jwt","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9a3aebf2d4d904411a4756fbeacb433d","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":75,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.016548,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9a3aebf2d4d904411a4756fbeacb433d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9a3aebf2d4d904411a4756fbeacb433d","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Attempting to run experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Attempting to book experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Successfully booked experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2160b370-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"21610190-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":76,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.196887,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2160b370-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2160b370-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":77,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.373541,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"21610190-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"21610190-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.357788957Z"}]},"request_id":"0012e650-5902-4170-b1cd-e6750375443c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.7105577} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2160b370-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.409367443Z"}]},"request_id":"b57e13d4-617b-4a05-bc9b-ef0a7fa051cf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.7127063} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"21610190-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2160b370-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b03c3c27-3124-446f-abc8-7b1888c9c092? 200 28ms","method":"GET","requestID":"2160b370-848f-11ef-9233-95baf63f17e0","responseTime":28,"status":200,"url":"/devices/b03c3c27-3124-446f-abc8-7b1888c9c092?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"21610190-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2? 200 28ms","method":"GET","requestID":"21610190-848f-11ef-9233-95baf63f17e0","responseTime":28,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Setting up experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Successfully locked booking for experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Attempting to update booking for experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Successfully updated booking for experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Successfully set up experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"216e9620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"216ee440-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"216f5970-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":78,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.21202,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Successfully running experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"216e9620-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"216e9620-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":79,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.092079,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"216ee440-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"216ee440-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.409367443Z"}]},"request_id":"3a5d082c-9ece-4f81-a947-237a52d10697","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.8065934} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"216ee440-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.357788957Z"}]},"request_id":"139af15a-098f-435b-abbb-e026af86cb26","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.8083117} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"216e9620-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:59064","level":"info","msg":"Received request.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7b889e5b-f0a5-4cd2-ae1a-190a699581ff","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.8136637} authorization-1 | {"client_addr":"127.0.0.1:59064","level":"info","msg":"Sent response.","req_id":80,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.710894,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"216f5970-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 19ms","method":"POST","requestID":"216f5970-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"216ee440-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2? 200 29ms","method":"GET","requestID":"216ee440-848f-11ef-9233-95baf63f17e0","responseTime":29,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"216e9620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b03c3c27-3124-446f-abc8-7b1888c9c092? 200 35ms","method":"GET","requestID":"216e9620-848f-11ef-9233-95baf63f17e0","responseTime":35,"status":200,"url":"/devices/b03c3c27-3124-446f-abc8-7b1888c9c092?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffeb7eb3e-188a-41fe-9ce4-2b506fe9f435#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffeb7eb3e-188a-41fe-9ce4-2b506fe9f435","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"065ab433-3e7b-4c03-a2f9-9a29da62b993","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.8214607} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"28b57ffe-588b-4bca-b74c-1d908949c52c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.821898} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"216f5970-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b03c3c27-3124-446f-abc8-7b1888c9c092/signaling 200 33ms","method":"POST","requestID":"216f5970-848f-11ef-9233-95baf63f17e0","responseTime":33,"status":200,"url":"/devices/b03c3c27-3124-446f-abc8-7b1888c9c092/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"9a3aebf2d4d904411a4756fbeacb433d","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2174b0a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"21754ce0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4bc83935-1f27-48fc-9973-ad70f355fcab","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.8333325} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":81,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.147029,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2174b0a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","object_type":"device","rebac_allow":false,"scope_allow":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":"2174b0a0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"272a398e-84a3-4142-9b4a-a605715fd27e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.8381693} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":82,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.051577,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2174b0a0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"21754ce0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","object_type":"device","rebac_allow":false,"scope_allow":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":"21754ce0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/b03c3c27-3124-446f-abc8-7b1888c9c092/signaling 200 14ms","method":"POST","requestID":"2174b0a0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/b03c3c27-3124-446f-abc8-7b1888c9c092/signaling"} gateway-1 | {"time_local":"07/Oct/2024:09:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.206","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 199ms","method":"POST","requestID":"9a3aebf2d4d904411a4756fbeacb433d","responseTime":199,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"217796d0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154","level":"info","message":"auth send jwt","requestID":"a020121f5a55d76785573c1558b2df17"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"21754ce0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a020121f5a55d76785573c1558b2df17","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/signaling 200 18ms","method":"POST","requestID":"21754ce0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a020121f5a55d76785573c1558b2df17"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fb93dec7-f345-4efc-b287-b3989d4785e8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.8520675} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":83,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.444801,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"217796d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","object_type":"device","rebac_allow":false,"scope_allow":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":"217796d0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":84,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.143074,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a020121f5a55d76785573c1558b2df17","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a020121f5a55d76785573c1558b2df17","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"217796d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/signaling 200 15ms","method":"POST","requestID":"217796d0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.357788957Z"}]},"request_id":"b1c48730-7e39-45e9-8d94-bc959a3f500e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.860832} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a020121f5a55d76785573c1558b2df17","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"217a55f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"217aa410-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a020121f5a55d76785573c1558b2df17"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":85,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.023078,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} gateway-1 | {"time_local":"07/Oct/2024:09:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b03c3c27-3124-446f-abc8-7b1888c9c092? 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":"a020121f5a55d76785573c1558b2df17"} device-1 | {"level":"info","message":"GET /devices/b03c3c27-3124-446f-abc8-7b1888c9c092? 200 20ms","method":"GET","requestID":"a020121f5a55d76785573c1558b2df17","responseTime":20,"status":200,"url":"/devices/b03c3c27-3124-446f-abc8-7b1888c9c092?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"217a55f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"217a55f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":86,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.09753,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"217aa410-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"217aa410-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.357788957Z"}]},"request_id":"500cdd2e-e6ff-4fb7-a83f-31e6b9f115d0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.8741846} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154","level":"info","message":"auth send jwt","requestID":"aae29ae0a6ea06428c2085bc4af9ed09"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aae29ae0a6ea06428c2085bc4af9ed09","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"217a55f0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.409367443Z"}]},"request_id":"7098609d-7978-4159-8674-c401fd65b502","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.875545} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aae29ae0a6ea06428c2085bc4af9ed09"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"217aa410-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":87,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.97805,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"aae29ae0a6ea06428c2085bc4af9ed09","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"aae29ae0a6ea06428c2085bc4af9ed09","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"217a55f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b03c3c27-3124-446f-abc8-7b1888c9c092? 200 21ms","method":"GET","requestID":"217a55f0-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/b03c3c27-3124-446f-abc8-7b1888c9c092?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"217aa410-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2? 200 20ms","method":"GET","requestID":"217aa410-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:52.409367443Z"}]},"request_id":"7af76233-b926-41bd-b5a4-0578df1d174e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.8859148} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aae29ae0a6ea06428c2085bc4af9ed09","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Building connection plan","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"36572ecd-50fd-493b-ae33-475aa5b747c9"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"199ba042-f37c-4873-8f8f-4ccd55daf2eb"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"9e95a115-312d-40aa-afc4-932a725eb701"}]},"level":"info","message":"Built pairwise service configurations","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} 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/b03c3c27-3124-446f-abc8-7b1888c9c092"},{"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/ace3f427-e2dd-4518-a92f-a66db78cb5d2"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"217e4d90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aae29ae0a6ea06428c2085bc4af9ed09"} gateway-1 | {"time_local":"07/Oct/2024:09:32:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2? 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":"aae29ae0a6ea06428c2085bc4af9ed09"} device-1 | {"level":"info","message":"GET /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2? 200 16ms","method":"GET","requestID":"aae29ae0a6ea06428c2085bc4af9ed09","responseTime":16,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":88,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.78092,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"217e4d90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293574,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3NH0.UwQioc0OszoKJ5AkDziZjiJwIkuo6wg5478ys93r154"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"217e4d90-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"159dbe85-7270-425b-88ab-8fa9279b9708","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.9023716} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"06115630-9932-4ed0-aaee-67609775618f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.9025939} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"217e4d90-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"217e4d90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"217e4d90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15'","requestID":"217e4d90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15'","requestID":"217e4d90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"217e4d90-848f-11ef-9233-95baf63f17e0"} 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":"217e4d90-848f-11ef-9233-95baf63f17e0","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":"217e4d90-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"9a3aebf2d4d904411a4756fbeacb433d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"21872730-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40c667d2-14ba-418b-ad3d-b2d600b78764","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.952398} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":89,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.294443,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"21872730-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"21872730-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"21872730-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b03c3c27-3124-446f-abc8-7b1888c9c092/signaling 200 9ms","method":"POST","requestID":"21872730-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/b03c3c27-3124-446f-abc8-7b1888c9c092/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2188fbf0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:54Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d54f9529-b101-4178-8b79-e1a6dda2a0b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293574.9650106} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":90,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.52059,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:54Z"} device-1 | {"device":"ace3f427-e2dd-4518-a92f-a66db78cb5d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ace3f427-e2dd-4518-a92f-a66db78cb5d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2188fbf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","object_type":"device","rebac_allow":false,"scope_allow":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":"2188fbf0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2188fbf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/signaling 200 13ms","method":"POST","requestID":"2188fbf0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 3446777590065461970 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:KZbH\r\na=ice-pwd:kZxjKsnRNTIxthdUInEuCbLc\r\na=ice-options:trickle\r\na=fingerprint:sha-256 EE:21:F6:F5:84:A2:1A:5D:82:F0:00:EE:56:5A:F7:45:49:DA:9E:2B:62:0E:5F:F7:3C:BA:AE:BA:9D:A1:07:6B\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"ace3f427-e2dd-4518-a92f-a66db78cb5d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"ace3f427-e2dd-4518-a92f-a66db78cb5d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"b03c3c27-3124-446f-abc8-7b1888c9c092","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":"2f525e0c-8835-4774-bcfc-bc39d940db15","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b03c3c27-3124-446f-abc8-7b1888c9c092","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":"b03c3c27-3124-446f-abc8-7b1888c9c092","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":"b03c3c27-3124-446f-abc8-7b1888c9c092","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":"b03c3c27-3124-446f-abc8-7b1888c9c092","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/2f525e0c-8835-4774-bcfc-bc39d940db15' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f525e0c-8835-4774-bcfc-bc39d940db15","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4568f51db5a005b2a93ce5fc420d3da4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"4568f51db5a005b2a93ce5fc420d3da4","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/b03c3c27-3124-446f-abc8-7b1888c9c092"},{"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/ace3f427-e2dd-4518-a92f-a66db78cb5d2"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15"}}},"level":"info","message":"received a callback","requestID":"4568f51db5a005b2a93ce5fc420d3da4"} device-1 | {"content":{"candidate":"candidate:3785572366 1 udp 2113937151 ec740910-0d4e-4936-ab91-0a5c97b1257a.local 47612 typ host generation 0 ufrag KZbH network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ace3f427-e2dd-4518-a92f-a66db78cb5d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1921573149 1 udp 1677729535 141.24.211.56 47612 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag KZbH network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ace3f427-e2dd-4518-a92f-a66db78cb5d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3433323247 1 udp 33562623 141.24.210.113 60397 typ relay raddr 141.24.211.56 rport 47612 generation 0 ufrag KZbH network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ace3f427-e2dd-4518-a92f-a66db78cb5d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"ace3f427-e2dd-4518-a92f-a66db78cb5d2","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/ace3f427-e2dd-4518-a92f-a66db78cb5d2'"} device-1 | {"data":{"peerconnection":"2f525e0c-8835-4774-bcfc-bc39d940db15","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2'"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 17ms","method":"POST","requestID":"4568f51db5a005b2a93ce5fc420d3da4","responseTime":17,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.023","http_referrer":"","http_user_agent":"node-fetch","requestID":"4568f51db5a005b2a93ce5fc420d3da4"} device-1 | {"device":"b03c3c27-3124-446f-abc8-7b1888c9c092","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":"ace3f427-e2dd-4518-a92f-a66db78cb5d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"b03c3c27-3124-446f-abc8-7b1888c9c092","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":"2f525e0c-8835-4774-bcfc-bc39d940db15","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/2f525e0c-8835-4774-bcfc-bc39d940db15' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f525e0c-8835-4774-bcfc-bc39d940db15","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3c53616fb0c18c0c305e66b4c14e3bb0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3c53616fb0c18c0c305e66b4c14e3bb0","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/b03c3c27-3124-446f-abc8-7b1888c9c092"},{"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/ace3f427-e2dd-4518-a92f-a66db78cb5d2"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15"}}},"level":"info","message":"received a callback","requestID":"3c53616fb0c18c0c305e66b4c14e3bb0"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"22caa3b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f525e0c-8835-4774-bcfc-bc39d940db15","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28e3d183-371e-4c29-af09-e92e2bea6964","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.0757074} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":91,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.782146,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"22caa3b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"22caa3b0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"22caa3b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15 200 14ms","method":"GET","requestID":"22caa3b0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 51ms","method":"POST","requestID":"3c53616fb0c18c0c305e66b4c14e3bb0","responseTime":51,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.056","http_referrer":"","http_user_agent":"node-fetch","requestID":"3c53616fb0c18c0c305e66b4c14e3bb0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"22d10c50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1dedff4e-9cc3-455f-9f66-c0efb3bdf096","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.1152222} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":92,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.283046,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"22d10c50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","object_type":"device","rebac_allow":false,"scope_allow":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":"22d10c50-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"22d10c50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b03c3c27-3124-446f-abc8-7b1888c9c092/signaling 200 12ms","method":"POST","requestID":"22d10c50-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/b03c3c27-3124-446f-abc8-7b1888c9c092/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"22d35640-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"df02b117-ccd9-469f-899a-067f292248d9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.1310256} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":93,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.091153,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"22d35640-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","object_type":"device","rebac_allow":false,"scope_allow":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":"22d35640-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"22d35640-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/signaling 200 12ms","method":"POST","requestID":"22d35640-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8","level":"info","message":"auth send jwt","requestID":"93484539825dd00046a282310c2addbe"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"93484539825dd00046a282310c2addbe","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435","requestID":"93484539825dd00046a282310c2addbe"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":94,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.249169,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"93484539825dd00046a282310c2addbe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293577,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"93484539825dd00046a282310c2addbe","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435","requestID":"93484539825dd00046a282310c2addbe"} experiment-1 | {"level":"info","message":"GET /experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435 200 20ms","method":"GET","requestID":"93484539825dd00046a282310c2addbe","responseTime":20,"status":200,"url":"/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"} gateway-1 | {"time_local":"07/Oct/2024:09:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.027","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"93484539825dd00046a282310c2addbe"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8","level":"info","message":"auth send jwt","requestID":"2fe3a202a99dd117be4e6ce47df1d7d3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2fe3a202a99dd117be4e6ce47df1d7d3","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435","requestID":"2fe3a202a99dd117be4e6ce47df1d7d3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":95,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.753216,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2fe3a202a99dd117be4e6ce47df1d7d3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293577,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2fe3a202a99dd117be4e6ce47df1d7d3","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Attempting to finish experiment","requestID":"2fe3a202a99dd117be4e6ce47df1d7d3"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"22dcf330-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":96,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.674733,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"22dcf330-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293577,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"22dcf330-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15","device":"ace3f427-e2dd-4518-a92f-a66db78cb5d2","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"b03c3c27-3124-446f-abc8-7b1888c9c092","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":"b03c3c27-3124-446f-abc8-7b1888c9c092","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":"b03c3c27-3124-446f-abc8-7b1888c9c092","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/2f525e0c-8835-4774-bcfc-bc39d940db15' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"2f525e0c-8835-4774-bcfc-bc39d940db15","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f65ef32182230da2d1d688d9364e368e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f65ef32182230da2d1d688d9364e368e","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"97928e9c6c7633a0f325f5422ba4eeb4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/b03c3c27-3124-446f-abc8-7b1888c9c092"},{"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/ace3f427-e2dd-4518-a92f-a66db78cb5d2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15"}}},"level":"info","message":"received a callback","requestID":"f65ef32182230da2d1d688d9364e368e"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"97928e9c6c7633a0f325f5422ba4eeb4","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f525e0c-8835-4774-bcfc-bc39d940db15': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F2f525e0c-8835-4774-bcfc-bc39d940db15","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"4cee2cf9-3b07-43d9-bb01-243a746406fe","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.2159276} 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/b03c3c27-3124-446f-abc8-7b1888c9c092"},{"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/ace3f427-e2dd-4518-a92f-a66db78cb5d2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15"}}},"level":"info","message":"received a callback","requestID":"97928e9c6c7633a0f325f5422ba4eeb4"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c3b1f0db-aed2-46cb-9c4a-1436454cbfa6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.216158} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"22dcf330-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"2f525e0c-8835-4774-bcfc-bc39d940db15","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"22dcf330-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15 204 43ms","method":"DELETE","requestID":"22dcf330-848f-11ef-9233-95baf63f17e0","responseTime":43,"status":204,"url":"/peerconnections/2f525e0c-8835-4774-bcfc-bc39d940db15"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"},"level":"info","message":"Successfully finished experiment","requestID":"2fe3a202a99dd117be4e6ce47df1d7d3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"22e6de40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb03c3c27-3124-446f-abc8-7b1888c9c092","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b8d6928a-bb7d-4445-8758-f539e558e82e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.2583175} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":97,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.067783,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"22e6de40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b03c3c27-3124-446f-abc8-7b1888c9c092","object_type":"device","rebac_allow":false,"scope_allow":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":"22e6de40-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"22e6de40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b03c3c27-3124-446f-abc8-7b1888c9c092/signaling 200 11ms","method":"POST","requestID":"22e6de40-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/b03c3c27-3124-446f-abc8-7b1888c9c092/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffeb7eb3e-188a-41fe-9ce4-2b506fe9f435': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffeb7eb3e-188a-41fe-9ce4-2b506fe9f435","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"2e9acd46-3a48-4c95-91dc-2f193aa3c1d6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.2650337} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ecae0691-6dc1-410f-a069-32a49fd7ff73","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.2652843} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"22e92830-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"2fe3a202a99dd117be4e6ce47df1d7d3","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Face3f427-e2dd-4518-a92f-a66db78cb5d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9d8c8f62-b2b0-42a8-9bf3-66c7db58e586","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.273698} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":98,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.064993,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"22e92830-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2","object_type":"device","rebac_allow":false,"scope_allow":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":"22e92830-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"22e92830-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/signaling 200 12ms","method":"POST","requestID":"22e92830-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/ace3f427-e2dd-4518-a92f-a66db78cb5d2/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435","requestID":"2fe3a202a99dd117be4e6ce47df1d7d3"} gateway-1 | {"time_local":"07/Oct/2024:09:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435 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":"2fe3a202a99dd117be4e6ce47df1d7d3"} experiment-1 | {"level":"info","message":"DELETE /experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435 204 168ms","method":"DELETE","requestID":"2fe3a202a99dd117be4e6ce47df1d7d3","responseTime":168,"status":204,"url":"/experiments/feb7eb3e-188a-41fe-9ce4-2b506fe9f435"} gateway-1 | {"time_local":"07/Oct/2024:09:32:57 +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.379","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"fb19a9911c31ebc9782fcd6a89013dd2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"f65ef32182230da2d1d688d9364e368e","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"f65ef32182230da2d1d688d9364e368e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"97928e9c6c7633a0f325f5422ba4eeb4","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:32: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.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"97928e9c6c7633a0f325f5422ba4eeb4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8","level":"info","message":"auth send jwt","requestID":"26fad471c4b12364fd75081cf817b475"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"26fad471c4b12364fd75081cf817b475","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"26fad471c4b12364fd75081cf817b475"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":99,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.920821,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} gateway-1 | {"time_local":"07/Oct/2024:09:32:57 +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.877","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ecc6bdd946d9793f34e908180678c365"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26fad471c4b12364fd75081cf817b475","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293577,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26fad471c4b12364fd75081cf817b475","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/b03c3c27-3124-446f-abc8-7b1888c9c092' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"551e4864-2478-4a9d-886d-242f8bc9993a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.374608} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"26fad471c4b12364fd75081cf817b475","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/ace3f427-e2dd-4518-a92f-a66db78cb5d2' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8ec19a21-1ce7-4a8b-a2e9-a70f5100f206","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.3825731} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"26fad471c4b12364fd75081cf817b475","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"642acc2e-b1da-4dac-8f93-7b0208a864a4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.392146} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1f320c6-6444-404d-8525-6eb4dc32323a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.3924534} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"26fad471c4b12364fd75081cf817b475","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.392128968Z"}]},"request_id":"5ddf1b95-9914-4e3f-ab0c-03c3cf893ab6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.397485} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"26fad471c4b12364fd75081cf817b475","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"26fad471c4b12364fd75081cf817b475"} gateway-1 | {"time_local":"07/Oct/2024:09:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"26fad471c4b12364fd75081cf817b475"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"26fad471c4b12364fd75081cf817b475","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8","level":"info","message":"auth send jwt","requestID":"62e9364591393d358906be28a798f7a5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"62e9364591393d358906be28a798f7a5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"62e9364591393d358906be28a798f7a5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.646482,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62e9364591393d358906be28a798f7a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293577,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"62e9364591393d358906be28a798f7a5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2fe979d4-062a-4082-9099-560b68707fe3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.4289496} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"62e9364591393d358906be28a798f7a5","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"290b470e-c763-45c5-b1e0-17bc66b73c25","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.4344475} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"62e9364591393d358906be28a798f7a5","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"f6e3a446-153b-47c4-8530-cb7b53d76d75","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.447226} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ca9e6e2c-263e-4f2c-9c01-bbec18a0c1df","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.4473145} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"62e9364591393d358906be28a798f7a5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.447213973Z"}]},"request_id":"da61aece-55b3-498d-9767-7428ca337294","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.4541454} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"62e9364591393d358906be28a798f7a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"62e9364591393d358906be28a798f7a5"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"62e9364591393d358906be28a798f7a5","responseTime":50,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"62e9364591393d358906be28a798f7a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8","level":"info","message":"auth send jwt","requestID":"da0ecd08148769e1396e2cf876defee2"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"da0ecd08148769e1396e2cf876defee2","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8","level":"info","message":"auth send jwt","requestID":"34e7a737f1d8099a48f4ccaa5597b684"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"34e7a737f1d8099a48f4ccaa5597b684","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"da0ecd08148769e1396e2cf876defee2"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"34e7a737f1d8099a48f4ccaa5597b684"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.768217,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"da0ecd08148769e1396e2cf876defee2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293577,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"da0ecd08148769e1396e2cf876defee2","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.535133,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"34e7a737f1d8099a48f4ccaa5597b684","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293577,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"34e7a737f1d8099a48f4ccaa5597b684","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.392128968Z"}]},"request_id":"5ce4e413-4da0-43a9-835e-e8c7eee461e4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.9308605} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"da0ecd08148769e1396e2cf876defee2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.447213973Z"}]},"request_id":"7b9a1e8b-158d-4abb-9ea0-f6840b6a45ef","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.9318612} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"34e7a737f1d8099a48f4ccaa5597b684","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c1bc9f0-60f9-4ba6-a646-4e054106e687","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.937685} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"da0ecd08148769e1396e2cf876defee2","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b1a0ec04-f0ea-41d7-802d-018812272e8d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.9402065} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"34e7a737f1d8099a48f4ccaa5597b684","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.447213973Z"}]},"request_id":"c5ae6dd5-cc2b-4b4d-91fb-4f7d6fcd350b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.9441283} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"34e7a737f1d8099a48f4ccaa5597b684","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"34e7a737f1d8099a48f4ccaa5597b684"} gateway-1 | {"time_local":"07/Oct/2024:09:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"34e7a737f1d8099a48f4ccaa5597b684"} device-1 | {"level":"info","message":"PATCH /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d 200 27ms","method":"PATCH","requestID":"34e7a737f1d8099a48f4ccaa5597b684","responseTime":27,"status":200,"url":"/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8","level":"info","message":"auth send jwt","requestID":"0cbb6a3c37a61a29bddd7c2490eb55da"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0cbb6a3c37a61a29bddd7c2490eb55da","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0cbb6a3c37a61a29bddd7c2490eb55da"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.392128968Z"}]},"request_id":"31676158-9b6b-4e2b-bdf5-7cd415e1272a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293577.9549205} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"da0ecd08148769e1396e2cf876defee2","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"da0ecd08148769e1396e2cf876defee2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.767751,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} gateway-1 | {"time_local":"07/Oct/2024:09:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9fa709d6-5652-476a-9753-6d1a820a1434 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.049","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"da0ecd08148769e1396e2cf876defee2"} device-1 | {"level":"info","message":"PATCH /devices/9fa709d6-5652-476a-9753-6d1a820a1434 200 40ms","method":"PATCH","requestID":"da0ecd08148769e1396e2cf876defee2","responseTime":40,"status":200,"url":"/devices/9fa709d6-5652-476a-9753-6d1a820a1434"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0cbb6a3c37a61a29bddd7c2490eb55da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293577,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0cbb6a3c37a61a29bddd7c2490eb55da","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8","level":"info","message":"auth send jwt","requestID":"3e8f90cc6c16446c4001bfef5bbaa702"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3e8f90cc6c16446c4001bfef5bbaa702","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3e8f90cc6c16446c4001bfef5bbaa702"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.673387,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:57Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e8f90cc6c16446c4001bfef5bbaa702","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293577,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3N30.LG6ObWKd-0oCHdS1ZiaCun-GS8vFqSmich71PO5nnq8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3e8f90cc6c16446c4001bfef5bbaa702","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0cbb6a3c37a61a29bddd7c2490eb55da"} gateway-1 | {"time_local":"07/Oct/2024:09:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d/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.9","requestID":"0cbb6a3c37a61a29bddd7c2490eb55da"} device-1 | {"level":"info","message":"POST /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d/websocket 200 18ms","method":"POST","requestID":"0cbb6a3c37a61a29bddd7c2490eb55da","responseTime":18,"status":200,"url":"/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3e8f90cc6c16446c4001bfef5bbaa702"} gateway-1 | {"time_local":"07/Oct/2024:09:32:57 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9fa709d6-5652-476a-9753-6d1a820a1434/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.9","requestID":"3e8f90cc6c16446c4001bfef5bbaa702"} device-1 | {"level":"info","message":"POST /devices/9fa709d6-5652-476a-9753-6d1a820a1434/websocket 200 16ms","method":"POST","requestID":"3e8f90cc6c16446c4001bfef5bbaa702","responseTime":16,"status":200,"url":"/devices/9fa709d6-5652-476a-9753-6d1a820a1434/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k","level":"info","message":"auth send jwt","requestID":"0c1bf1c8c599b4231bb33cda62726cf6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0c1bf1c8c599b4231bb33cda62726cf6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c1bf1c8c599b4231bb33cda62726cf6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.651052,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0c1bf1c8c599b4231bb33cda62726cf6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293578,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0c1bf1c8c599b4231bb33cda62726cf6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.392128968Z"}]},"request_id":"759598ca-cc06-4577-baca-8f77af377da9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.0244565} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"0c1bf1c8c599b4231bb33cda62726cf6","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c1bf1c8c599b4231bb33cda62726cf6"} gateway-1 | {"time_local":"07/Oct/2024:09:32:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9fa709d6-5652-476a-9753-6d1a820a1434? 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":"0c1bf1c8c599b4231bb33cda62726cf6"} device-1 | {"level":"info","message":"GET /devices/9fa709d6-5652-476a-9753-6d1a820a1434? 200 21ms","method":"GET","requestID":"0c1bf1c8c599b4231bb33cda62726cf6","responseTime":21,"status":200,"url":"/devices/9fa709d6-5652-476a-9753-6d1a820a1434?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k","level":"info","message":"auth send jwt","requestID":"bd8c724893391ba47f31a1362385bfd2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bd8c724893391ba47f31a1362385bfd2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bd8c724893391ba47f31a1362385bfd2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.22607,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"bd8c724893391ba47f31a1362385bfd2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293578,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"bd8c724893391ba47f31a1362385bfd2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.447213973Z"}]},"request_id":"0ea801ce-14c6-4fcc-b2e6-c961728a695d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.0519667} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bd8c724893391ba47f31a1362385bfd2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bd8c724893391ba47f31a1362385bfd2"} device-1 | {"level":"info","message":"GET /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d? 200 18ms","method":"GET","requestID":"bd8c724893391ba47f31a1362385bfd2","responseTime":18,"status":200,"url":"/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d?"} gateway-1 | {"time_local":"07/Oct/2024:09:32:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d? 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":"bd8c724893391ba47f31a1362385bfd2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k","level":"info","message":"auth send jwt","requestID":"670e7b7bf09046a590403a684b1e239b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"670e7b7bf09046a590403a684b1e239b","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"670e7b7bf09046a590403a684b1e239b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.164133,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"670e7b7bf09046a590403a684b1e239b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293578,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"670e7b7bf09046a590403a684b1e239b","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Attempting to run experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Attempting to book experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Successfully booked experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"236ab440-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"236b0260-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.634735,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"236ab440-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293578,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"236ab440-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.568179,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"236b0260-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293578,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"236b0260-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.392128968Z"}]},"request_id":"cd5a7f3c-83d4-4d52-8d84-63374dca0e04","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.1252677} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"236ab440-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.447213973Z"}]},"request_id":"5c9913e0-223b-45bd-8975-a5834f67729c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.1261733} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"236b0260-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"236ab440-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/9fa709d6-5652-476a-9753-6d1a820a1434? 200 21ms","method":"GET","requestID":"236ab440-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/9fa709d6-5652-476a-9753-6d1a820a1434?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"236b0260-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d? 200 22ms","method":"GET","requestID":"236b0260-848f-11ef-9233-95baf63f17e0","responseTime":22,"status":200,"url":"/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Setting up experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Successfully locked booking for experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Attempting to update booking for experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Successfully updated booking for experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Successfully set up experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23769b20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"23771050-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Successfully running experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23775e70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.721855,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"23769b20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293578,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"23769b20-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.739582,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"23771050-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293578,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"23771050-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f880b32c-7e6a-4339-9d8f-6979fa41ab19","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.2069986} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.447213973Z"}]},"request_id":"75c37139-4c22-476c-85e0-99dc499e564d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.207583} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.402823,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"23771050-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"23775e70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","object_type":"device","rebac_allow":false,"scope_allow":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":"23775e70-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.392128968Z"}]},"request_id":"0de395b9-331b-4a97-bd79-be21960d3dc1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.2093763} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"23769b20-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23771050-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d? 200 19ms","method":"GET","requestID":"23771050-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23775e70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9fa709d6-5652-476a-9753-6d1a820a1434/signaling 200 19ms","method":"POST","requestID":"23775e70-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/9fa709d6-5652-476a-9753-6d1a820a1434/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"23769b20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/9fa709d6-5652-476a-9753-6d1a820a1434? 200 26ms","method":"GET","requestID":"23769b20-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/9fa709d6-5652-476a-9753-6d1a820a1434?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"237ab9d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"237b2f00-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"237ab9d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"35342f77-2872-42be-a810-9d0a86dbd1de","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.2280455} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.143006,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} device-1 | {"level":"info","message":"POST /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d/signaling 200 14ms","method":"POST","requestID":"237ab9d0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d/signaling"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"237ab9d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","object_type":"device","rebac_allow":false,"scope_allow":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":"237ab9d0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a16d5847-7e58-479c-a418-68c18cdf02a2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.2291882} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.978546,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"237b2f00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","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":"237b2f00-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"237b2f00-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/9fa709d6-5652-476a-9753-6d1a820a1434/signaling 200 12ms","method":"POST","requestID":"237b2f00-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/9fa709d6-5652-476a-9753-6d1a820a1434/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"237d51e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"700d818f-5c25-4e63-8ebf-a28b792d436c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.2444088} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.69605,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"237d51e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","object_type":"device","rebac_allow":false,"scope_allow":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":"237d51e0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"237d51e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d/signaling 200 12ms","method":"POST","requestID":"237d51e0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"237f74c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"237fc2e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.632223,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"237f74c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293578,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"237f74c0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.708233,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"237fc2e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293578,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"237fc2e0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.392128968Z"}]},"request_id":"cd9bbcf4-83db-48c3-ad62-5f4e7aa1bd5c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.2623487} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"237f74c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.447213973Z"}]},"request_id":"ec4b7522-3118-4c53-a7dc-8b7afc9934b3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.2632594} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"237fc2e0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"237f74c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/9fa709d6-5652-476a-9753-6d1a820a1434? 200 16ms","method":"GET","requestID":"237f74c0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/9fa709d6-5652-476a-9753-6d1a820a1434?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"237fc2e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d? 200 15ms","method":"GET","requestID":"237fc2e0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Building connection plan","requestID":"670e7b7bf09046a590403a684b1e239b"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"d57a1492-063b-4726-8073-207c8f145751"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"28c7938f-4908-41d5-b41c-0bf3737e13c3"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"d4677caf-4ad7-4f7b-af12-1087d5138bd7"}]},"level":"info","message":"Built pairwise service configurations","requestID":"670e7b7bf09046a590403a684b1e239b"} 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/9fa709d6-5652-476a-9753-6d1a820a1434"},{"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/dec42260-b79f-4e33-9ac1-183a16f3b91d"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"670e7b7bf09046a590403a684b1e239b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2382a910-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.880584,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2382a910-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293578,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2382a910-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fadd7b54d-d887-433e-a685-b11c14ea05e2#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fadd7b54d-d887-433e-a685-b11c14ea05e2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"6f271dac-1daa-4b7b-af36-dea16334e948","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.3726387} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dca1f4ff-fbb4-4f13-ac3d-01ff06aba7ce","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.373173} authorization-1 | {"level":"info","message":"POST /relations/update 200 178ms","method":"POST","requestID":"670e7b7bf09046a590403a684b1e239b","responseTime":178,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"18a73132-0c85-4f65-8271-043d8313f31f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.375155} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"780e0ebe-c5dd-4fbd-b535-ffd97afa4dc5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.3833017} authorization-1 | {"level":"info","message":"POST /relations/update 200 101ms","method":"POST","requestID":"2382a910-848f-11ef-9233-95baf63f17e0","responseTime":101,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"670e7b7bf09046a590403a684b1e239b"} gateway-1 | {"time_local":"07/Oct/2024:09:32:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"816","request_time":"0.332","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"670e7b7bf09046a590403a684b1e239b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 326ms","method":"POST","requestID":"670e7b7bf09046a590403a684b1e239b","responseTime":326,"status":201,"url":"/experiments?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k","level":"info","message":"auth send jwt","requestID":"0bebe1857c8b9c443a409957b60189cf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0bebe1857c8b9c443a409957b60189cf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0bebe1857c8b9c443a409957b60189cf"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.329031,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0bebe1857c8b9c443a409957b60189cf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293578,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0bebe1857c8b9c443a409957b60189cf","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.392128968Z"}]},"request_id":"cc7cd16d-6aa4-4eaf-a0ab-38d4c8705f07","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.418431} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"0bebe1857c8b9c443a409957b60189cf","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2382a910-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2382a910-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787'","requestID":"2382a910-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787'","requestID":"2382a910-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2382a910-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 246ms","method":"POST","requestID":"2382a910-848f-11ef-9233-95baf63f17e0","responseTime":246,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0bebe1857c8b9c443a409957b60189cf"} gateway-1 | {"time_local":"07/Oct/2024:09:32:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9fa709d6-5652-476a-9753-6d1a820a1434? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.125","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0bebe1857c8b9c443a409957b60189cf"} device-1 | {"level":"info","message":"GET /devices/9fa709d6-5652-476a-9753-6d1a820a1434? 200 118ms","method":"GET","requestID":"0bebe1857c8b9c443a409957b60189cf","responseTime":118,"status":200,"url":"/devices/9fa709d6-5652-476a-9753-6d1a820a1434?"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"2382a910-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k","level":"info","message":"auth send jwt","requestID":"95149dd9a74d88f1c158a3a0e69b60d5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"95149dd9a74d88f1c158a3a0e69b60d5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"95149dd9a74d88f1c158a3a0e69b60d5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.557306,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"95149dd9a74d88f1c158a3a0e69b60d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293578,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU3OH0.GJmZclOGkQslTu7MQCzA_uB4WyA0bUxDvTIOAMQMF9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"95149dd9a74d88f1c158a3a0e69b60d5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:32:57.447213973Z"}]},"request_id":"b39e0f0c-76d0-4c7f-8811-c75b4dda4290","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.5466392} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"95149dd9a74d88f1c158a3a0e69b60d5","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"95149dd9a74d88f1c158a3a0e69b60d5"} gateway-1 | {"time_local":"07/Oct/2024:09:32:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"95149dd9a74d88f1c158a3a0e69b60d5"} device-1 | {"level":"info","message":"GET /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d? 200 24ms","method":"GET","requestID":"95149dd9a74d88f1c158a3a0e69b60d5","responseTime":24,"status":200,"url":"/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"670e7b7bf09046a590403a684b1e239b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23e7fa90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dd28246f-4e6d-4d7e-8e25-29bedc0347b8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.9456599} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.016215,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"23e7fa90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","object_type":"device","rebac_allow":false,"scope_allow":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":"23e7fa90-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23e7fa90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9fa709d6-5652-476a-9753-6d1a820a1434/signaling 200 16ms","method":"POST","requestID":"23e7fa90-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/9fa709d6-5652-476a-9753-6d1a820a1434/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"23eb07d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f95b5244-447e-4166-80a6-437ecee855d0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293578.966368} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.310141,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:32:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"23eb07d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","object_type":"device","rebac_allow":false,"scope_allow":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":"23eb07d0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"23eb07d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d/signaling 200 18ms","method":"POST","requestID":"23eb07d0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d/signaling"} device-1 | {"device":"dec42260-b79f-4e33-9ac1-183a16f3b91d","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":"3d8c35ab-3edf-4e0a-b793-7768f3410787","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9fa709d6-5652-476a-9753-6d1a820a1434","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":"3d8c35ab-3edf-4e0a-b793-7768f3410787","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9fa709d6-5652-476a-9753-6d1a820a1434","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":"9fa709d6-5652-476a-9753-6d1a820a1434","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":"9fa709d6-5652-476a-9753-6d1a820a1434","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":"9fa709d6-5652-476a-9753-6d1a820a1434","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/3d8c35ab-3edf-4e0a-b793-7768f3410787' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3d8c35ab-3edf-4e0a-b793-7768f3410787","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a2df4b7548678d3d80743d2f8dba3878","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a2df4b7548678d3d80743d2f8dba3878","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/9fa709d6-5652-476a-9753-6d1a820a1434"},{"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/dec42260-b79f-4e33-9ac1-183a16f3b91d"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787"}}},"level":"info","message":"received a callback","requestID":"a2df4b7548678d3d80743d2f8dba3878"} device-1 | {"device":"dec42260-b79f-4e33-9ac1-183a16f3b91d","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":"dec42260-b79f-4e33-9ac1-183a16f3b91d","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":"dec42260-b79f-4e33-9ac1-183a16f3b91d","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 13ms","method":"POST","requestID":"a2df4b7548678d3d80743d2f8dba3878","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.020","http_referrer":"","http_user_agent":"node-fetch","requestID":"a2df4b7548678d3d80743d2f8dba3878"} device-1 | {"device":"9fa709d6-5652-476a-9753-6d1a820a1434","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":"dec42260-b79f-4e33-9ac1-183a16f3b91d","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":"9fa709d6-5652-476a-9753-6d1a820a1434","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":"dec42260-b79f-4e33-9ac1-183a16f3b91d","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":"3d8c35ab-3edf-4e0a-b793-7768f3410787","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"3d8c35ab-3edf-4e0a-b793-7768f3410787","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/3d8c35ab-3edf-4e0a-b793-7768f3410787' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3d8c35ab-3edf-4e0a-b793-7768f3410787","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cea8aa2c6dd466dbd60ce72348d5e32f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cea8aa2c6dd466dbd60ce72348d5e32f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434"},{"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/dec42260-b79f-4e33-9ac1-183a16f3b91d"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787"}}},"level":"info","message":"received a callback","requestID":"cea8aa2c6dd466dbd60ce72348d5e32f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"24f23ea0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3d8c35ab-3edf-4e0a-b793-7768f3410787","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e1e5430d-7643-4010-a230-d044e6fb842c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.6886215} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.860065,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"24f23ea0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787","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":"24f23ea0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"24f23ea0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787 200 15ms","method":"GET","requestID":"24f23ea0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 54ms","method":"POST","requestID":"cea8aa2c6dd466dbd60ce72348d5e32f","responseTime":54,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.059","http_referrer":"","http_user_agent":"node-fetch","requestID":"cea8aa2c6dd466dbd60ce72348d5e32f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"24f8f560-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4MH0.6qheA56JLfmVCrq0XD2cLl_FWYecYoKTbc7FrgMuEhg","level":"info","message":"auth send jwt","requestID":"2f725a187026eb90463a6a20a549c050"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:00Z"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"2f725a187026eb90463a6a20a549c050","responseTime":7,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/add7b54d-d887-433e-a685-b11c14ea05e2","requestID":"2f725a187026eb90463a6a20a549c050"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93515a39-4d2d-4215-957b-61a12af10419","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.7376618} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.396585,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"24f8f560-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","object_type":"device","rebac_allow":false,"scope_allow":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":"24f8f560-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.470312,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f725a187026eb90463a6a20a549c050","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293580,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4MH0.6qheA56JLfmVCrq0XD2cLl_FWYecYoKTbc7FrgMuEhg"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"2f725a187026eb90463a6a20a549c050","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"24f8f560-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9fa709d6-5652-476a-9753-6d1a820a1434/signaling 200 24ms","method":"POST","requestID":"24f8f560-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/9fa709d6-5652-476a-9753-6d1a820a1434/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"24fd3b20-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/add7b54d-d887-433e-a685-b11c14ea05e2","requestID":"2f725a187026eb90463a6a20a549c050"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:00Z"} gateway-1 | {"time_local":"07/Oct/2024:09:33:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/add7b54d-d887-433e-a685-b11c14ea05e2 HTTP/1.1","status": "200","body_bytes_sent":"889","request_time":"0.036","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2f725a187026eb90463a6a20a549c050"} experiment-1 | {"level":"info","message":"GET /experiments/add7b54d-d887-433e-a685-b11c14ea05e2 200 27ms","method":"GET","requestID":"2f725a187026eb90463a6a20a549c050","responseTime":27,"status":200,"url":"/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f731308f-a37c-41ec-ad0a-a5323f103d8b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.7626188} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.003054,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"24fd3b20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","object_type":"device","rebac_allow":false,"scope_allow":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":"24fd3b20-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"24fd3b20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d/signaling 200 16ms","method":"POST","requestID":"24fd3b20-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4MH0.6qheA56JLfmVCrq0XD2cLl_FWYecYoKTbc7FrgMuEhg","level":"info","message":"auth send jwt","requestID":"f71e4ed16ee925ad98fe69d0798dfebf"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"f71e4ed16ee925ad98fe69d0798dfebf","responseTime":8,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/add7b54d-d887-433e-a685-b11c14ea05e2","requestID":"f71e4ed16ee925ad98fe69d0798dfebf"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.488435,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f71e4ed16ee925ad98fe69d0798dfebf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293580,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4MH0.6qheA56JLfmVCrq0XD2cLl_FWYecYoKTbc7FrgMuEhg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f71e4ed16ee925ad98fe69d0798dfebf","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Attempting to finish experiment","requestID":"f71e4ed16ee925ad98fe69d0798dfebf"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"25029250-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.876999,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"25029250-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293580,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4MH0.6qheA56JLfmVCrq0XD2cLl_FWYecYoKTbc7FrgMuEhg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"25029250-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"9fa709d6-5652-476a-9753-6d1a820a1434","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":"9fa709d6-5652-476a-9753-6d1a820a1434","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":"9fa709d6-5652-476a-9753-6d1a820a1434","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":"dec42260-b79f-4e33-9ac1-183a16f3b91d","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":"dec42260-b79f-4e33-9ac1-183a16f3b91d","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":"dec42260-b79f-4e33-9ac1-183a16f3b91d","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/3d8c35ab-3edf-4e0a-b793-7768f3410787' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3d8c35ab-3edf-4e0a-b793-7768f3410787","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3d8c35ab-3edf-4e0a-b793-7768f3410787': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3d8c35ab-3edf-4e0a-b793-7768f3410787","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"8776d10d-d5cc-4551-90ef-6b3fa1e6d149","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.8121693} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"40a937bd-d0e5-455c-a276-dad27e08461f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.812374} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"232ced8478de3129cf64a1d7216ea22d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"25029250-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"232ced8478de3129cf64a1d7216ea22d","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4dc01825b758ac5e06c376bdd102a589","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434"},{"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/dec42260-b79f-4e33-9ac1-183a16f3b91d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787"}}},"level":"info","message":"received a callback","requestID":"232ced8478de3129cf64a1d7216ea22d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4dc01825b758ac5e06c376bdd102a589","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434"},{"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/dec42260-b79f-4e33-9ac1-183a16f3b91d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787"}}},"level":"info","message":"received a callback","requestID":"4dc01825b758ac5e06c376bdd102a589"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"25029250-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787 204 45ms","method":"DELETE","requestID":"25029250-848f-11ef-9233-95baf63f17e0","responseTime":45,"status":204,"url":"/peerconnections/3d8c35ab-3edf-4e0a-b793-7768f3410787"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"},"level":"info","message":"Successfully finished experiment","requestID":"f71e4ed16ee925ad98fe69d0798dfebf"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"250c2f40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9fa709d6-5652-476a-9753-6d1a820a1434","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"772d8def-f5d3-4c52-9e7a-9260b37cb62d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.8584056} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.806918,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"250c2f40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9fa709d6-5652-476a-9753-6d1a820a1434","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"250c2f40-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"250c2f40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9fa709d6-5652-476a-9753-6d1a820a1434/signaling 200 12ms","method":"POST","requestID":"250c2f40-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/9fa709d6-5652-476a-9753-6d1a820a1434/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fadd7b54d-d887-433e-a685-b11c14ea05e2': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fadd7b54d-d887-433e-a685-b11c14ea05e2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"bae3be4d-2620-4cd8-bd9a-5eac8465d711","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.8673913} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bc6f2d19-3cda-412e-b2c1-4c860441065c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.8677897} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"250ea040-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"f71e4ed16ee925ad98fe69d0798dfebf","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdec42260-b79f-4e33-9ac1-183a16f3b91d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04e4d957-6ab0-41d1-b942-0e4077984602","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.8746514} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.751667,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"250ea040-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d","object_type":"device","rebac_allow":false,"scope_allow":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":"250ea040-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"250ea040-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/dec42260-b79f-4e33-9ac1-183a16f3b91d/signaling 200 13ms","method":"POST","requestID":"250ea040-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/add7b54d-d887-433e-a685-b11c14ea05e2","requestID":"f71e4ed16ee925ad98fe69d0798dfebf"} gateway-1 | {"time_local":"07/Oct/2024:09:33:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/add7b54d-d887-433e-a685-b11c14ea05e2 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":"f71e4ed16ee925ad98fe69d0798dfebf"} experiment-1 | {"level":"info","message":"DELETE /experiments/add7b54d-d887-433e-a685-b11c14ea05e2 204 166ms","method":"DELETE","requestID":"f71e4ed16ee925ad98fe69d0798dfebf","responseTime":166,"status":204,"url":"/experiments/add7b54d-d887-433e-a685-b11c14ea05e2"} gateway-1 | {"time_local":"07/Oct/2024:09:33:00 +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.957","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"ca2c8cd0cf8d8b7087156be9591bc1e8"} gateway-1 | {"time_local":"07/Oct/2024:09:33:00 +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.966","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"39724f7129156649062a5221dabc3c3d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"232ced8478de3129cf64a1d7216ea22d","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"232ced8478de3129cf64a1d7216ea22d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"4dc01825b758ac5e06c376bdd102a589","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"4dc01825b758ac5e06c376bdd102a589"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4MH0.6qheA56JLfmVCrq0XD2cLl_FWYecYoKTbc7FrgMuEhg","level":"info","message":"auth send jwt","requestID":"60950c737c9fa8f269cbc178e2cd42b3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"60950c737c9fa8f269cbc178e2cd42b3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"60950c737c9fa8f269cbc178e2cd42b3"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/dec42260-b79f-4e33-9ac1-183a16f3b91d' closed"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.864672,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"60950c737c9fa8f269cbc178e2cd42b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293580,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4MH0.6qheA56JLfmVCrq0XD2cLl_FWYecYoKTbc7FrgMuEhg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"60950c737c9fa8f269cbc178e2cd42b3","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/9fa709d6-5652-476a-9753-6d1a820a1434' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d6ca10d2-e4e7-43d2-b46a-aa1c33207591","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.9712486} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"60950c737c9fa8f269cbc178e2cd42b3","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4269d91d-f92f-453a-9861-0df8e7c3613b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.979651} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"60950c737c9fa8f269cbc178e2cd42b3","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"51182dc4-0d61-489f-a1ec-d514f145e38a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.9881651} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d88663b1-ab91-4968-8f80-7db95529d89f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.988277} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"60950c737c9fa8f269cbc178e2cd42b3","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:00.988146371Z"}]},"request_id":"66da5d2a-d1e0-4efd-b669-e7447443bad9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293580.994397} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"60950c737c9fa8f269cbc178e2cd42b3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"60950c737c9fa8f269cbc178e2cd42b3"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"60950c737c9fa8f269cbc178e2cd42b3"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"60950c737c9fa8f269cbc178e2cd42b3","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4MX0.e2tbOJT1o3yclvx07MAjtB3BV-pmSkOQg4HpWz6VA70","level":"info","message":"auth send jwt","requestID":"f03553d8c2a92f9a214d935a5d21b88b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f03553d8c2a92f9a214d935a5d21b88b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f03553d8c2a92f9a214d935a5d21b88b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.914485,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f03553d8c2a92f9a214d935a5d21b88b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293581,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4MX0.e2tbOJT1o3yclvx07MAjtB3BV-pmSkOQg4HpWz6VA70"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f03553d8c2a92f9a214d935a5d21b88b","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c0b5fbc5-e8eb-4646-9c23-7525ddb37adc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293581.020993} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f03553d8c2a92f9a214d935a5d21b88b","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8875202c-1c70-4697-a6a9-8510354f26d9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293581.027403} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f03553d8c2a92f9a214d935a5d21b88b","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"036f3fae-d98e-4504-a9e7-c20d3cae5d91","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293581.0442362} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f04864fe-07f8-4516-b9c9-e977dda1175a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293581.0444858} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"f03553d8c2a92f9a214d935a5d21b88b","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:01.044219675Z"}]},"request_id":"af660741-1aa8-42df-9493-a76027a09d52","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293581.0497327} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f03553d8c2a92f9a214d935a5d21b88b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f03553d8c2a92f9a214d935a5d21b88b"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f03553d8c2a92f9a214d935a5d21b88b"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"f03553d8c2a92f9a214d935a5d21b88b","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1f8cf3ff2dfc6a4a9e52f13b2bfeaa3d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1f8cf3ff2dfc6a4a9e52f13b2bfeaa3d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/184c2481-f728-4583-b21c-2d82e546af50/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":"1f8cf3ff2dfc6a4a9e52f13b2bfeaa3d"} device-1 | {"level":"info","message":"OPTIONS /devices/184c2481-f728-4583-b21c-2d82e546af50/websocket 200 1ms","method":"OPTIONS","requestID":"1f8cf3ff2dfc6a4a9e52f13b2bfeaa3d","responseTime":1,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"48359c5f0d9a0175b9049fc2bda4f6fa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"48359c5f0d9a0175b9049fc2bda4f6fa","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/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":"48359c5f0d9a0175b9049fc2bda4f6fa"} device-1 | {"level":"info","message":"OPTIONS /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/websocket 200 1ms","method":"OPTIONS","requestID":"48359c5f0d9a0175b9049fc2bda4f6fa","responseTime":1,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo","level":"info","message":"auth send jwt","requestID":"8ac8d4b4e40119565cde7ef9b0033d68"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8ac8d4b4e40119565cde7ef9b0033d68","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8ac8d4b4e40119565cde7ef9b0033d68"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo","level":"info","message":"auth send jwt","requestID":"4520c0226ea43af2aaa3b94767573170"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4520c0226ea43af2aaa3b94767573170","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4520c0226ea43af2aaa3b94767573170"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.304227,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8ac8d4b4e40119565cde7ef9b0033d68","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8ac8d4b4e40119565cde7ef9b0033d68","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.222823,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4520c0226ea43af2aaa3b94767573170","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4520c0226ea43af2aaa3b94767573170","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8ac8d4b4e40119565cde7ef9b0033d68"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/184c2481-f728-4583-b21c-2d82e546af50/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":"8ac8d4b4e40119565cde7ef9b0033d68"} device-1 | {"level":"info","message":"POST /devices/184c2481-f728-4583-b21c-2d82e546af50/websocket 200 30ms","method":"POST","requestID":"8ac8d4b4e40119565cde7ef9b0033d68","responseTime":30,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4520c0226ea43af2aaa3b94767573170"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","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":"4520c0226ea43af2aaa3b94767573170"} device-1 | {"level":"info","message":"POST /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/websocket 200 35ms","method":"POST","requestID":"4520c0226ea43af2aaa3b94767573170","responseTime":35,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ec22a187760c01d8858a02173b3d3d6c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ec22a187760c01d8858a02173b3d3d6c","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/184c2481-f728-4583-b21c-2d82e546af50? 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":"ec22a187760c01d8858a02173b3d3d6c"} device-1 | {"level":"info","message":"OPTIONS /devices/184c2481-f728-4583-b21c-2d82e546af50? 200 1ms","method":"OPTIONS","requestID":"ec22a187760c01d8858a02173b3d3d6c","responseTime":1,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1cf1c866662e7d2bb6f85211db2ce257","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1cf1c866662e7d2bb6f85211db2ce257","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo","level":"info","message":"auth send jwt","requestID":"4b8050b928fc93d7843ce05f49c5280d"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e? 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":"1cf1c866662e7d2bb6f85211db2ce257"} device-1 | {"level":"info","message":"OPTIONS /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e? 200 1ms","method":"OPTIONS","requestID":"1cf1c866662e7d2bb6f85211db2ce257","responseTime":1,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e?"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"4b8050b928fc93d7843ce05f49c5280d","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4b8050b928fc93d7843ce05f49c5280d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.217343,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo","level":"info","message":"auth send jwt","requestID":"5c85c944902e2bf6b7f165ce71ba2d3f"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4b8050b928fc93d7843ce05f49c5280d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5c85c944902e2bf6b7f165ce71ba2d3f","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4b8050b928fc93d7843ce05f49c5280d","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5c85c944902e2bf6b7f165ce71ba2d3f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.040966,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c85c944902e2bf6b7f165ce71ba2d3f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5c85c944902e2bf6b7f165ce71ba2d3f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:00.988146371Z"}]},"request_id":"f8d13fc2-c4dd-4269-a2d4-74d12482640e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.1579092} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4b8050b928fc93d7843ce05f49c5280d","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64de3958-c4dc-4924-acf1-bfbda6fbe389","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.1658216} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4b8050b928fc93d7843ce05f49c5280d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:01.044219675Z"}]},"request_id":"09e2e6fb-6b71-4347-be68-0b97f6a37c3c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.1704283} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5c85c944902e2bf6b7f165ce71ba2d3f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cd86648c-bf98-4f72-8cac-6b5c058c25b3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.1764956} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5c85c944902e2bf6b7f165ce71ba2d3f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:00.988146371Z"}]},"request_id":"4d7136fb-ecb2-42ed-8447-ef74c193692e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.1826591} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4b8050b928fc93d7843ce05f49c5280d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4b8050b928fc93d7843ce05f49c5280d"} device-1 | {"level":"info","message":"PATCH /devices/184c2481-f728-4583-b21c-2d82e546af50? 200 44ms","method":"PATCH","requestID":"4b8050b928fc93d7843ce05f49c5280d","responseTime":44,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/184c2481-f728-4583-b21c-2d82e546af50? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.053","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4b8050b928fc93d7843ce05f49c5280d"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:01.044219675Z"}]},"request_id":"2f4639b5-4611-41b3-83a2-ec9d4b299c99","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.194793} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5c85c944902e2bf6b7f165ce71ba2d3f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5c85c944902e2bf6b7f165ce71ba2d3f"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e? 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":"5c85c944902e2bf6b7f165ce71ba2d3f"} device-1 | {"level":"info","message":"PATCH /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e? 200 47ms","method":"PATCH","requestID":"5c85c944902e2bf6b7f165ce71ba2d3f","responseTime":47,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo","level":"info","message":"auth send jwt","requestID":"532ba48a806f939fd24236b32c5bf7da"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"532ba48a806f939fd24236b32c5bf7da","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"532ba48a806f939fd24236b32c5bf7da"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.18605,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"532ba48a806f939fd24236b32c5bf7da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"532ba48a806f939fd24236b32c5bf7da","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:00.988146371Z"}]},"request_id":"5a712867-7981-4f73-ab42-070d3e2f6106","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.2204196} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"532ba48a806f939fd24236b32c5bf7da","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"532ba48a806f939fd24236b32c5bf7da"} device-1 | {"level":"info","message":"GET /devices/184c2481-f728-4583-b21c-2d82e546af50? 200 16ms","method":"GET","requestID":"532ba48a806f939fd24236b32c5bf7da","responseTime":16,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/184c2481-f728-4583-b21c-2d82e546af50? 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":"532ba48a806f939fd24236b32c5bf7da"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo","level":"info","message":"auth send jwt","requestID":"fcc16cedcd102d4cc25b5eb33564fabd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fcc16cedcd102d4cc25b5eb33564fabd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fcc16cedcd102d4cc25b5eb33564fabd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.012926,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"fcc16cedcd102d4cc25b5eb33564fabd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fcc16cedcd102d4cc25b5eb33564fabd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:01.044219675Z"}]},"request_id":"87685314-bfae-414d-8dc6-e7ad6f983a76","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.242908} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fcc16cedcd102d4cc25b5eb33564fabd","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fcc16cedcd102d4cc25b5eb33564fabd"} device-1 | {"level":"info","message":"GET /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e? 200 16ms","method":"GET","requestID":"fcc16cedcd102d4cc25b5eb33564fabd","responseTime":16,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e? 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":"fcc16cedcd102d4cc25b5eb33564fabd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo","level":"info","message":"auth send jwt","requestID":"8f019460ed57b38d835adbfe5cdf6846"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8f019460ed57b38d835adbfe5cdf6846","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8f019460ed57b38d835adbfe5cdf6846"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.056916,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8f019460ed57b38d835adbfe5cdf6846","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8f019460ed57b38d835adbfe5cdf6846","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Attempting to run experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Attempting to book experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Successfully booked experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"268058b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2680a6d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.795724,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"268058b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"268058b0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915539,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2680a6d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2680a6d0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:00.988146371Z"}]},"request_id":"f9da1ef7-af9b-45b7-a0b9-673bff529de7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.3014743} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"268058b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:01.044219675Z"}]},"request_id":"1dab030a-1aa5-4f00-9458-b2fbf01e60bc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.3035274} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2680a6d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"268058b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/184c2481-f728-4583-b21c-2d82e546af50? 200 20ms","method":"GET","requestID":"268058b0-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2680a6d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e? 200 20ms","method":"GET","requestID":"2680a6d0-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Setting up experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Successfully set up experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"268cb4c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"268d29f0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Successfully running experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"268d7810-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.244317,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"268cb4c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"268cb4c0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.878729,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"268d29f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"268d29f0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8b8bd42f-599c-4aa3-8974-a17edef12be5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.3857396} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.254717,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"268d7810-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","object_type":"device","rebac_allow":false,"scope_allow":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":"268d7810-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:00.988146371Z"}]},"request_id":"083f38cf-67cb-4d70-a435-9b2a0f32dbb1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.3874655} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:01.044219675Z"}]},"request_id":"fdd3c7dd-6217-4fb9-85d3-07d0068b2e5c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.3890114} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"268cb4c0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"268d29f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"268d7810-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/184c2481-f728-4583-b21c-2d82e546af50/signaling 200 20ms","method":"POST","requestID":"268d7810-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"268cb4c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/184c2481-f728-4583-b21c-2d82e546af50? 200 28ms","method":"GET","requestID":"268cb4c0-848f-11ef-9233-95baf63f17e0","responseTime":28,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"26912190-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3fc021a4-6c91-4cac-9b2e-c4897f37d1c4#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3fc021a4-6c91-4cac-9b2e-c4897f37d1c4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"d6a0ca50-c32c-4dc5-a787-e961af4f46b4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.4022336} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"268d29f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e? 200 30ms","method":"GET","requestID":"268d29f0-848f-11ef-9233-95baf63f17e0","responseTime":30,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"60ed9e47-9ebd-4747-a036-189fd99cda0c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.4029284} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"26923300-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"8f019460ed57b38d835adbfe5cdf6846","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4198bd0b-e41f-4a4b-bf5a-1af90a613ca9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.4107227} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.525087,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26912190-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","object_type":"device","rebac_allow":false,"scope_allow":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":"26912190-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a87852b-e316-4a10-b04d-0a0715746b5d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.415501} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.88197,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8f019460ed57b38d835adbfe5cdf6846"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26923300-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","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":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8f019460ed57b38d835adbfe5cdf6846"} experiment-1 | {"level":"info","message":"POST /experiments? 201 163ms","method":"POST","requestID":"8f019460ed57b38d835adbfe5cdf6846","responseTime":163,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"26923300-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"26912190-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/signaling 200 20ms","method":"POST","requestID":"26912190-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo","level":"info","message":"auth send jwt","requestID":"5f7d25803475f2474edf2c5c31cf92b6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5f7d25803475f2474edf2c5c31cf92b6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"26923300-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/184c2481-f728-4583-b21c-2d82e546af50/signaling 200 17ms","method":"POST","requestID":"26923300-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f7d25803475f2474edf2c5c31cf92b6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"26954040-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.02834,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f7d25803475f2474edf2c5c31cf92b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5f7d25803475f2474edf2c5c31cf92b6","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c3d2bdf8-fcdf-45b6-afd5-53f10d1d5cda","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.4340303} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.529148,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26954040-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","object_type":"device","rebac_allow":false,"scope_allow":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":"26954040-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:00.988146371Z"}]},"request_id":"6da32ba8-91ce-4fed-8c36-eb0fcc236b87","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.4382021} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"26954040-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/signaling 200 10ms","method":"POST","requestID":"26954040-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5f7d25803475f2474edf2c5c31cf92b6","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"26973c10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"26978a30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f7d25803475f2474edf2c5c31cf92b6"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/184c2481-f728-4583-b21c-2d82e546af50? 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":"5f7d25803475f2474edf2c5c31cf92b6"} device-1 | {"level":"info","message":"GET /devices/184c2481-f728-4583-b21c-2d82e546af50? 200 20ms","method":"GET","requestID":"5f7d25803475f2474edf2c5c31cf92b6","responseTime":20,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.106194,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26973c10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26973c10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.837417,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26978a30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"26978a30-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo","level":"info","message":"auth send jwt","requestID":"b23abd4aeebb6cb83f70998506aa21cd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b23abd4aeebb6cb83f70998506aa21cd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b23abd4aeebb6cb83f70998506aa21cd"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:00.988146371Z"}]},"request_id":"478b63ed-1fed-4a0f-a3ce-986357fa9444","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.451017} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"26973c10-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:01.044219675Z"}]},"request_id":"a4110ed0-0305-45fd-b935-57a2477ba6b6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.452436} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"26978a30-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.036437,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b23abd4aeebb6cb83f70998506aa21cd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b23abd4aeebb6cb83f70998506aa21cd","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"26973c10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/184c2481-f728-4583-b21c-2d82e546af50? 200 18ms","method":"GET","requestID":"26973c10-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"26978a30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e? 200 17ms","method":"GET","requestID":"26978a30-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:01.044219675Z"}]},"request_id":"09bf2fab-f3f8-42e7-bc1f-2c38ffa745b3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.4607098} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Building connection plan","requestID":"8f019460ed57b38d835adbfe5cdf6846"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"b23abd4aeebb6cb83f70998506aa21cd","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"8573d2fd-b7be-4432-9eff-bbb4dcab9638"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"9829efd6-a5c4-4d24-94f5-f50b6fbbbbf4"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"320b4d85-ba47-4909-bf35-46b6ff94b67d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8f019460ed57b38d835adbfe5cdf6846"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b23abd4aeebb6cb83f70998506aa21cd"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e? 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":"b23abd4aeebb6cb83f70998506aa21cd"} device-1 | {"level":"info","message":"GET /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e? 200 14ms","method":"GET","requestID":"b23abd4aeebb6cb83f70998506aa21cd","responseTime":14,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"269cba50-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"269cba50-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 9ms","method":"POST","requestID":"269cba50-848f-11ef-8885-7d835fc08c91","responseTime":9,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/78b54848-055c-435a-b40d-29bd8bc12cd1?id=985dc01e-2703-4113-9be0-5413540c3c9c","ws://localhost/rooms/78b54848-055c-435a-b40d-29bd8bc12cd1?id=222c369b-2247-4eec-97e8-f5f417f48d6a"]},"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/184c2481-f728-4583-b21c-2d82e546af50"},{"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/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"8f019460ed57b38d835adbfe5cdf6846"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"269eb620-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.935244,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"269eb620-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"269eb620-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"e2c6527c-aa23-4989-ac93-13b80c1c61b6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.502911} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d3266a70-d772-41af-a9c3-1683691a12e1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.5030925} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"269eb620-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"269eb620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"269eb620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca'","requestID":"269eb620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca'","requestID":"269eb620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"269eb620-848f-11ef-9233-95baf63f17e0"} 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":"269eb620-848f-11ef-9233-95baf63f17e0","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":"269eb620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ff50f97a-c28d-492c-8b8d-b0a3531cd8ca","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6e21b35a30517a53bb83e5df7d728249","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6e21b35a30517a53bb83e5df7d728249","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"26a71a90-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"985dc01e-2703-4113-9be0-5413540c3c9c\" in room \"http://localhost/rooms/78b54848-055c-435a-b40d-29bd8bc12cd1\"","requestID":"26a71a90-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"26a71a90-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"26a7b6d0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"222c369b-2247-4eec-97e8-f5f417f48d6a\" in room \"http://localhost/rooms/78b54848-055c-435a-b40d-29bd8bc12cd1\"","requestID":"26a7b6d0-848f-11ef-8885-7d835fc08c91"} 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/184c2481-f728-4583-b21c-2d82e546af50"},{"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/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca"}}},"level":"info","message":"received a callback","requestID":"6e21b35a30517a53bb83e5df7d728249"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"26a7b6d0-848f-11ef-8885-7d835fc08c91"} device-1 | {"data":{"peerconnection":"ff50f97a-c28d-492c-8b8d-b0a3531cd8ca","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"6e21b35a30517a53bb83e5df7d728249","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch","requestID":"6e21b35a30517a53bb83e5df7d728249"} device-1 | {"data":{"peerconnection":"ff50f97a-c28d-492c-8b8d-b0a3531cd8ca","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8f019460ed57b38d835adbfe5cdf6846"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"26abd580-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ff50f97a-c28d-492c-8b8d-b0a3531cd8ca","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"604a898402dafbe4afe8ce2f49922c2f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3c745cc-529d-47d8-b03d-8603898ceca5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.581979} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"604a898402dafbe4afe8ce2f49922c2f","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.642238,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26abd580-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","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":["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/184c2481-f728-4583-b21c-2d82e546af50"},{"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/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca"}}},"level":"info","message":"received a callback","requestID":"604a898402dafbe4afe8ce2f49922c2f"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"26abd580-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"26adf860-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"26abd580-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} device-1 | {"level":"info","message":"POST /devices/184c2481-f728-4583-b21c-2d82e546af50/signaling 200 18ms","method":"POST","requestID":"26abd580-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fff50f97a-c28d-492c-8b8d-b0a3531cd8ca","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a72b36f-1442-41a6-b841-a9055c935758","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.595866} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.930947,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"26af09d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26adf860-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca","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":"26adf860-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"26adf860-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca 200 10ms","method":"GET","requestID":"26adf860-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cbbdf598-237f-40ff-b4d0-db3f6030b036","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.6015189} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.708557,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26af09d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26af09d0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"26af09d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/signaling 200 9ms","method":"POST","requestID":"26af09d0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 34ms","method":"POST","requestID":"604a898402dafbe4afe8ce2f49922c2f","responseTime":34,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch","requestID":"604a898402dafbe4afe8ce2f49922c2f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"26b23e20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9115791c-1cf3-444f-9f0a-26af8df91914","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.623315} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.124582,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26b23e20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26b23e20-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"26b23e20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/184c2481-f728-4583-b21c-2d82e546af50/signaling 200 9ms","method":"POST","requestID":"26b23e20-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"26b3ebd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"400d0f05-4edc-42d6-b7b8-75887318379c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.6342506} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.220456,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26b3ebd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26b3ebd0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"26b3ebd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/signaling 200 9ms","method":"POST","requestID":"26b3ebd0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo","level":"info","message":"auth send jwt","requestID":"f7369644310dfda0699f77523ea643e7"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f7369644310dfda0699f77523ea643e7","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4","requestID":"f7369644310dfda0699f77523ea643e7"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.469141,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f7369644310dfda0699f77523ea643e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f7369644310dfda0699f77523ea643e7","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4","requestID":"f7369644310dfda0699f77523ea643e7"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4 HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f7369644310dfda0699f77523ea643e7"} experiment-1 | {"level":"info","message":"GET /experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4 200 12ms","method":"GET","requestID":"f7369644310dfda0699f77523ea643e7","responseTime":12,"status":200,"url":"/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo","level":"info","message":"auth send jwt","requestID":"5c8fb90f654232b9ee54cc53b1a6a576"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5c8fb90f654232b9ee54cc53b1a6a576","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4","requestID":"5c8fb90f654232b9ee54cc53b1a6a576"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.019679,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c8fb90f654232b9ee54cc53b1a6a576","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5c8fb90f654232b9ee54cc53b1a6a576","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Attempting to finish experiment","requestID":"5c8fb90f654232b9ee54cc53b1a6a576"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"26bd61b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.934218,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26bd61b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"26bd61b0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca","device":"184c2481-f728-4583-b21c-2d82e546af50","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca","device":"b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","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/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca' to 'http://localhost/callbacks/experiment'"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/78b54848-055c-435a-b40d-29bd8bc12cd1?id=985dc01e-2703-4113-9be0-5413540c3c9c HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.173","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"cbc1cff3e93b876094ccff9b556b2ee4"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ff50f97a-c28d-492c-8b8d-b0a3531cd8ca","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/78b54848-055c-435a-b40d-29bd8bc12cd1?id=222c369b-2247-4eec-97e8-f5f417f48d6a HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.172","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"df90d44f052dda68a6fd78f29225ad3f"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"985dc01e-2703-4113-9be0-5413540c3c9c\" in room \"http://localhost/rooms/78b54848-055c-435a-b40d-29bd8bc12cd1\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"985dc01e-2703-4113-9be0-5413540c3c9c\" from room \"http://localhost/rooms/78b54848-055c-435a-b40d-29bd8bc12cd1\""} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fff50f97a-c28d-492c-8b8d-b0a3531cd8ca': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fff50f97a-c28d-492c-8b8d-b0a3531cd8ca","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"24f123fc-5f37-4e2f-a996-ac267722690a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.7116964} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a33de5aa-3ed4-4672-97da-41222e7acef3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.711961} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"222c369b-2247-4eec-97e8-f5f417f48d6a\" in room \"http://localhost/rooms/78b54848-055c-435a-b40d-29bd8bc12cd1\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"222c369b-2247-4eec-97e8-f5f417f48d6a\" from room \"http://localhost/rooms/78b54848-055c-435a-b40d-29bd8bc12cd1\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d18b390e9a93cafcf5d69a260c96966b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 10ms","method":"POST","requestID":"26bd61b0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d18b390e9a93cafcf5d69a260c96966b","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b5e42bc3e5c570dbe3afb118ecddbf63","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50"},{"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/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca"}}},"level":"info","message":"received a callback","requestID":"d18b390e9a93cafcf5d69a260c96966b"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b5e42bc3e5c570dbe3afb118ecddbf63","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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50"},{"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/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca"}}},"level":"info","message":"received a callback","requestID":"b5e42bc3e5c570dbe3afb118ecddbf63"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"26bd61b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca 204 39ms","method":"DELETE","requestID":"26bd61b0-848f-11ef-9233-95baf63f17e0","responseTime":39,"status":204,"url":"/peerconnections/ff50f97a-c28d-492c-8b8d-b0a3531cd8ca"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"},"level":"info","message":"Successfully finished experiment","requestID":"5c8fb90f654232b9ee54cc53b1a6a576"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"26c5c620-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F184c2481-f728-4583-b21c-2d82e546af50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c831416-1f7e-4e20-8872-9225078e0d3b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.7513344} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.386842,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26c5c620-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/184c2481-f728-4583-b21c-2d82e546af50","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26c5c620-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"26c5c620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/184c2481-f728-4583-b21c-2d82e546af50/signaling 200 10ms","method":"POST","requestID":"26c5c620-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/184c2481-f728-4583-b21c-2d82e546af50/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"26c7c1f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3fc021a4-6c91-4cac-9b2e-c4897f37d1c4': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3fc021a4-6c91-4cac-9b2e-c4897f37d1c4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"00c869b1-9b71-4f47-a946-9d52d089a35d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.7596714} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e24b6b54-49d2-454a-b987-fa7b8dbd1776","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.759888} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"5c8fb90f654232b9ee54cc53b1a6a576","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c9f53fa-da77-4169-a3cb-1f5edd738f48","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.7644649} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.789042,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26c7c1f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26c7c1f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"26c7c1f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/signaling 200 10ms","method":"POST","requestID":"26c7c1f0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4","requestID":"5c8fb90f654232b9ee54cc53b1a6a576"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4 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":"5c8fb90f654232b9ee54cc53b1a6a576"} experiment-1 | {"level":"info","message":"DELETE /experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4 204 149ms","method":"DELETE","requestID":"5c8fb90f654232b9ee54cc53b1a6a576","responseTime":149,"status":204,"url":"/experiments/3fc021a4-6c91-4cac-9b2e-c4897f37d1c4"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"d18b390e9a93cafcf5d69a260c96966b","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"d18b390e9a93cafcf5d69a260c96966b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"b5e42bc3e5c570dbe3afb118ecddbf63","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"b5e42bc3e5c570dbe3afb118ecddbf63"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo","level":"info","message":"auth send jwt","requestID":"e74666c03f9131b194965f27cbf8d414"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e74666c03f9131b194965f27cbf8d414","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e74666c03f9131b194965f27cbf8d414"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +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.735","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0f717e65bba313ab931d02ed6db0967f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.917269,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e74666c03f9131b194965f27cbf8d414","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e74666c03f9131b194965f27cbf8d414","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:03 +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.749","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"723e2ef6e373171e74eec5a4179a86bd"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b7f7e776-a9d0-49b3-9bc0-abc7b03cce7e' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"eed877a3-f784-40ab-8b4b-d9d4dc95cebb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.8568766} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e74666c03f9131b194965f27cbf8d414","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/184c2481-f728-4583-b21c-2d82e546af50' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0beb0973-d02e-4329-b319-bd09c4efd1ce","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.8620431} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e74666c03f9131b194965f27cbf8d414","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"f156f9ef-563f-4a71-9a49-40503cda964d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.8719926} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9a8bc1a6-d45c-4d8e-b742-003d998ed6db","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.872217} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"e74666c03f9131b194965f27cbf8d414","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.871980123Z"}]},"request_id":"4dd024f3-0a6f-4327-bdad-1c47819648b3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.876575} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e74666c03f9131b194965f27cbf8d414","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e74666c03f9131b194965f27cbf8d414"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e74666c03f9131b194965f27cbf8d414"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"e74666c03f9131b194965f27cbf8d414","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo","level":"info","message":"auth send jwt","requestID":"5eeb26b575ab31cce29eff468d4d6b6f"} device-1 | {"level":"info","message":"postDevices called","requestID":"5eeb26b575ab31cce29eff468d4d6b6f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5eeb26b575ab31cce29eff468d4d6b6f","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.926296,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5eeb26b575ab31cce29eff468d4d6b6f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293583,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4M30.KLLmG5O4q6diPlzXgfZL8ocsoSqGmwNxK1u0s5BvEAo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5eeb26b575ab31cce29eff468d4d6b6f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a39c0354-f523-46bd-bac2-1b1bed29ac8c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.903688} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5eeb26b575ab31cce29eff468d4d6b6f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f57a949-91da-4065-a182-0fee0ec0efe5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.909489} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5eeb26b575ab31cce29eff468d4d6b6f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"ae633c10-eaee-4de0-b048-ad47cb516ae6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.9273612} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eaa5aa53-9bd2-4ac4-a342-2e3b7adc671d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.927582} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"5eeb26b575ab31cce29eff468d4d6b6f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.927348478Z"}]},"request_id":"316af1cf-4d1a-480b-801e-6ec84281e663","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293583.9315507} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5eeb26b575ab31cce29eff468d4d6b6f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5eeb26b575ab31cce29eff468d4d6b6f"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"5eeb26b575ab31cce29eff468d4d6b6f","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5eeb26b575ab31cce29eff468d4d6b6f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4NH0.qP6aeJZRhe72t2_s4QrLawuohR2a_TTimBCv5vZymxg","level":"info","message":"auth send jwt","requestID":"74957e1712af81fea6e967cbacb1d847"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"74957e1712af81fea6e967cbacb1d847","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"74957e1712af81fea6e967cbacb1d847"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.868211,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"74957e1712af81fea6e967cbacb1d847","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293584,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4NH0.qP6aeJZRhe72t2_s4QrLawuohR2a_TTimBCv5vZymxg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"74957e1712af81fea6e967cbacb1d847","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.927348478Z"}]},"request_id":"4b9bb5cf-92f3-4a51-a39a-fb649f982578","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293584.4208028} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"74957e1712af81fea6e967cbacb1d847","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cb435ea4-cd54-43bd-84e2-b792da8a6da7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293584.4270575} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"74957e1712af81fea6e967cbacb1d847","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.927348478Z"}]},"request_id":"10437c78-7461-46e9-98bd-47c64d8faf83","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293584.440796} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"74957e1712af81fea6e967cbacb1d847","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"74957e1712af81fea6e967cbacb1d847"} gateway-1 | {"time_local":"07/Oct/2024:09:33:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"74957e1712af81fea6e967cbacb1d847"} device-1 | {"level":"info","message":"PATCH /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c 200 39ms","method":"PATCH","requestID":"74957e1712af81fea6e967cbacb1d847","responseTime":39,"status":200,"url":"/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4NH0.qP6aeJZRhe72t2_s4QrLawuohR2a_TTimBCv5vZymxg","level":"info","message":"auth send jwt","requestID":"3d12ca1e62d98081cbcafc014eb6eaa5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3d12ca1e62d98081cbcafc014eb6eaa5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3d12ca1e62d98081cbcafc014eb6eaa5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.171353,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3d12ca1e62d98081cbcafc014eb6eaa5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293584,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4NH0.qP6aeJZRhe72t2_s4QrLawuohR2a_TTimBCv5vZymxg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3d12ca1e62d98081cbcafc014eb6eaa5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3d12ca1e62d98081cbcafc014eb6eaa5"} device-1 | {"level":"info","message":"POST /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c/websocket 200 22ms","method":"POST","requestID":"3d12ca1e62d98081cbcafc014eb6eaa5","responseTime":22,"status":200,"url":"/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:33:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c/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.9","requestID":"3d12ca1e62d98081cbcafc014eb6eaa5"} device-1 | {"level":"info","message":"device 'http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"367a6c12015efbfa097faa2cf7438411","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"367a6c12015efbfa097faa2cf7438411","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/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":"367a6c12015efbfa097faa2cf7438411"} device-1 | {"level":"info","message":"OPTIONS /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/websocket 200 1ms","method":"OPTIONS","requestID":"367a6c12015efbfa097faa2cf7438411","responseTime":1,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4NX0.CeKCEcLtDYSmyD42bbsrr5-e_ROx9zZX6pFiEYrxTmw","level":"info","message":"auth send jwt","requestID":"935a2066ef15c85258808b660dfd43d3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"935a2066ef15c85258808b660dfd43d3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"935a2066ef15c85258808b660dfd43d3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.244896,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"935a2066ef15c85258808b660dfd43d3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293585,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4NX0.CeKCEcLtDYSmyD42bbsrr5-e_ROx9zZX6pFiEYrxTmw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"935a2066ef15c85258808b660dfd43d3","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"935a2066ef15c85258808b660dfd43d3"} gateway-1 | {"time_local":"07/Oct/2024:09:33:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/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":"935a2066ef15c85258808b660dfd43d3"} device-1 | {"level":"info","message":"POST /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/websocket 200 30ms","method":"POST","requestID":"935a2066ef15c85258808b660dfd43d3","responseTime":30,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aa622854ba566f7350fc4098270f9f14","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"aa622854ba566f7350fc4098270f9f14","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac? 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":"aa622854ba566f7350fc4098270f9f14"} device-1 | {"level":"info","message":"OPTIONS /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac? 200 2ms","method":"OPTIONS","requestID":"aa622854ba566f7350fc4098270f9f14","responseTime":2,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4NX0.CeKCEcLtDYSmyD42bbsrr5-e_ROx9zZX6pFiEYrxTmw","level":"info","message":"auth send jwt","requestID":"3b771e634887f4d474bb74f958baaf74"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3b771e634887f4d474bb74f958baaf74","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3b771e634887f4d474bb74f958baaf74"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.27549,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3b771e634887f4d474bb74f958baaf74","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293585,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4NX0.CeKCEcLtDYSmyD42bbsrr5-e_ROx9zZX6pFiEYrxTmw"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3b771e634887f4d474bb74f958baaf74","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.871980123Z"}]},"request_id":"be624e96-8de2-4899-b41f-a2884b514496","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.0170786} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3b771e634887f4d474bb74f958baaf74","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b049402e-f200-45b0-a394-0f497550e2b1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.0254543} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3b771e634887f4d474bb74f958baaf74","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.871980123Z"}]},"request_id":"202e56ea-4244-4f98-9165-dcee9f349156","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.0394113} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3b771e634887f4d474bb74f958baaf74","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3b771e634887f4d474bb74f958baaf74"} gateway-1 | {"time_local":"07/Oct/2024:09:33:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac? 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":"3b771e634887f4d474bb74f958baaf74"} device-1 | {"level":"info","message":"PATCH /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac? 200 42ms","method":"PATCH","requestID":"3b771e634887f4d474bb74f958baaf74","responseTime":42,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc","level":"info","message":"auth send jwt","requestID":"e596d4016fd8cba237cd1a0affa35d92"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e596d4016fd8cba237cd1a0affa35d92","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e596d4016fd8cba237cd1a0affa35d92"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.32357,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e596d4016fd8cba237cd1a0affa35d92","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e596d4016fd8cba237cd1a0affa35d92","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.871980123Z"}]},"request_id":"60acbec9-9851-4352-bf0c-d2b8b97e3d34","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.0726302} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e596d4016fd8cba237cd1a0affa35d92","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e596d4016fd8cba237cd1a0affa35d92"} gateway-1 | {"time_local":"07/Oct/2024:09:33:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac? 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":"e596d4016fd8cba237cd1a0affa35d92"} device-1 | {"level":"info","message":"GET /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac? 200 19ms","method":"GET","requestID":"e596d4016fd8cba237cd1a0affa35d92","responseTime":19,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc","level":"info","message":"auth send jwt","requestID":"0f21dbe35cd644975cac5d129509bc1a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"0f21dbe35cd644975cac5d129509bc1a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0f21dbe35cd644975cac5d129509bc1a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.459036,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0f21dbe35cd644975cac5d129509bc1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0f21dbe35cd644975cac5d129509bc1a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.927348478Z"}]},"request_id":"48280ec4-41b6-41de-9bfe-95827dc72662","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.101157} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0f21dbe35cd644975cac5d129509bc1a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0f21dbe35cd644975cac5d129509bc1a"} gateway-1 | {"time_local":"07/Oct/2024:09:33:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c? 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":"0f21dbe35cd644975cac5d129509bc1a"} device-1 | {"level":"info","message":"GET /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c? 200 19ms","method":"GET","requestID":"0f21dbe35cd644975cac5d129509bc1a","responseTime":19,"status":200,"url":"/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc","level":"info","message":"auth send jwt","requestID":"5b112268f6250d7dbd7755f783c3eaec"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5b112268f6250d7dbd7755f783c3eaec","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"5b112268f6250d7dbd7755f783c3eaec"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.402934,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5b112268f6250d7dbd7755f783c3eaec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5b112268f6250d7dbd7755f783c3eaec","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Attempting to run experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Attempting to book experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Successfully booked experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"28373070-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"28377e90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.663336,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"28373070-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"28373070-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.663545,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"28377e90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"28377e90-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.871980123Z"}]},"request_id":"f628fd23-b515-480c-a7b3-f928322657f4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.1777465} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"28373070-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.927348478Z"}]},"request_id":"54b0477f-a5e3-4e48-9232-648e03c1063a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.178638} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"28377e90-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"28373070-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac? 200 17ms","method":"GET","requestID":"28373070-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"28377e90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c? 200 16ms","method":"GET","requestID":"28377e90-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Setting up experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Successfully locked booking for experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Attempting to update booking for experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Successfully updated booking for experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Successfully set up experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2842a220-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"28431750-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28436570-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.626924,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Successfully running experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2842a220-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"2842a220-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.460913,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"28431750-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"28431750-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.765801,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c757ca6-a4ef-4748-9bd3-0d782984223a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.259142} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"28436570-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","object_type":"device","rebac_allow":false,"scope_allow":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":"28436570-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.871980123Z"}]},"request_id":"a60bb563-b3a5-4fe3-a1a1-421bf9d65736","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.2650118} authorization-1 | {"level":"info","message":"POST /relations/query 200 12ms","method":"POST","requestID":"2842a220-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.927348478Z"}]},"request_id":"cb3dfb0c-3965-4b33-bd56-2b98c64433a7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.2709253} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"28431750-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28436570-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/signaling 200 30ms","method":"POST","requestID":"28436570-848f-11ef-9233-95baf63f17e0","responseTime":30,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff5883b7a-c263-4120-94b5-ff7a4fe34199#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff5883b7a-c263-4120-94b5-ff7a4fe34199","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"5cce1604-672f-48d2-84ad-0c3bff3796ae","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.2818992} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"806416b6-0b47-4bde-a1c1-3603b38e8220","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.2835379} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"284931d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"5b112268f6250d7dbd7755f783c3eaec","responseTime":28,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2842a220-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} device-1 | {"level":"info","message":"GET /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac? 200 49ms","method":"GET","requestID":"2842a220-848f-11ef-9233-95baf63f17e0","responseTime":49,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"28431750-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c? 200 48ms","method":"GET","requestID":"28431750-848f-11ef-9233-95baf63f17e0","responseTime":48,"status":200,"url":"/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0bb197ff-a6bc-4660-8e60-f20c603df2ef","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.2931569} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.070112,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"284931d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","object_type":"device","rebac_allow":false,"scope_allow":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":"284931d0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"5b112268f6250d7dbd7755f783c3eaec"} gateway-1 | {"time_local":"07/Oct/2024:09:33:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.188","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5b112268f6250d7dbd7755f783c3eaec"} experiment-1 | {"level":"info","message":"POST /experiments? 201 182ms","method":"POST","requestID":"5b112268f6250d7dbd7755f783c3eaec","responseTime":182,"status":201,"url":"/experiments?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc","level":"info","message":"auth send jwt","requestID":"c4afdb53c8f9aaaf6569df150712a6e0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c4afdb53c8f9aaaf6569df150712a6e0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"284cb440-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c4afdb53c8f9aaaf6569df150712a6e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"453b16f6-6d15-45b4-81dd-1d9659b04642","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.3135881} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.342958,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"284931d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"284cb440-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","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/312f5ee3-4503-4089-ac2f-c30f7cb73f3c/signaling 200 30ms","method":"POST","requestID":"284931d0-848f-11ef-9233-95baf63f17e0","responseTime":30,"status":200,"url":"/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"284cb440-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.681576,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"284cb440-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c4afdb53c8f9aaaf6569df150712a6e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} device-1 | {"level":"info","message":"POST /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/signaling 200 11ms","method":"POST","requestID":"284cb440-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c4afdb53c8f9aaaf6569df150712a6e0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"284ed720-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.871980123Z"}]},"request_id":"ecddb6f6-e30f-4316-a13c-9ed296e095f0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.3233943} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c4afdb53c8f9aaaf6569df150712a6e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cc442a1b-bc25-44d9-befb-48e30a91460e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.3272727} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c4afdb53c8f9aaaf6569df150712a6e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.237252,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} gateway-1 | {"time_local":"07/Oct/2024:09:33:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac? 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":"c4afdb53c8f9aaaf6569df150712a6e0"} device-1 | {"level":"info","message":"GET /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac? 200 15ms","method":"GET","requestID":"c4afdb53c8f9aaaf6569df150712a6e0","responseTime":15,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"284ed720-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"284ed720-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"284ed720-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c/signaling 200 9ms","method":"POST","requestID":"284ed720-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc","level":"info","message":"auth send jwt","requestID":"8e32ec2391cd159a139396bc839b480d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8e32ec2391cd159a139396bc839b480d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"285084d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2850d2f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8e32ec2391cd159a139396bc839b480d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.743887,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"285084d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"285084d0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.556267,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2850d2f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2850d2f0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.871980123Z"}]},"request_id":"36e33b23-a7fa-4f58-896c-7b44e09091b4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.3428533} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"285084d0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.927348478Z"}]},"request_id":"45ae7d74-455a-4e27-a363-4a587eae446f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.3438942} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2850d2f0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:35622","level":"info","msg":"Received request.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:35622","level":"info","msg":"Sent response.","req_id":183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.846203,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8e32ec2391cd159a139396bc839b480d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8e32ec2391cd159a139396bc839b480d","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"285084d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac? 200 16ms","method":"GET","requestID":"285084d0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2850d2f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:03.927348478Z"}]},"request_id":"117b5355-a14c-4a53-9c7f-85e54e893712","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.3500555} device-1 | {"level":"info","message":"GET /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c? 200 15ms","method":"GET","requestID":"2850d2f0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8e32ec2391cd159a139396bc839b480d","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Building connection plan","requestID":"5b112268f6250d7dbd7755f783c3eaec"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"7781218d-d0fe-4a2c-92da-f955398b043e"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"572ef95f-57fc-4efb-a7f4-11dd91d45cd6"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"ae08531e-1e52-4cf1-84bb-0cf723fb2ec6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"5b112268f6250d7dbd7755f783c3eaec"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8e32ec2391cd159a139396bc839b480d"} gateway-1 | {"time_local":"07/Oct/2024:09:33:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c? 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":"8e32ec2391cd159a139396bc839b480d"} device-1 | {"level":"info","message":"GET /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c? 200 17ms","method":"GET","requestID":"8e32ec2391cd159a139396bc839b480d","responseTime":17,"status":200,"url":"/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"28539210-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"28539210-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 4ms","method":"POST","requestID":"28539210-848f-11ef-8885-7d835fc08c91","responseTime":4,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/6026acf8-2ce4-43b6-bab8-53e65aa2d136?id=663a9f18-a70f-4e3b-8d08-0fd3c634d629","ws://localhost/rooms/6026acf8-2ce4-43b6-bab8-53e65aa2d136?id=027341d9-b3c3-446d-9123-6858456cbd35"]},"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/b2f3da78-c73c-4114-9103-ca30c0f597ac"},{"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/312f5ee3-4503-4089-ac2f-c30f7cb73f3c"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"5b112268f6250d7dbd7755f783c3eaec"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2854a380-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.713848,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2854a380-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2854a380-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"2a3e7360-a0c6-40df-adf6-8b9744ca7d1f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.3735213} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ee38c087-ef84-42f4-a3ef-f21e31576e98","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.373648} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2854a380-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2854a380-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2854a380-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524'","requestID":"2854a380-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524'","requestID":"2854a380-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2854a380-848f-11ef-9233-95baf63f17e0"} 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":"2854a380-848f-11ef-9233-95baf63f17e0","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":"2854a380-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4aae4a5e-5ebe-4c39-9e77-d52e2d165524","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"285abe00-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"027341d9-b3c3-446d-9123-6858456cbd35\" in room \"http://localhost/rooms/6026acf8-2ce4-43b6-bab8-53e65aa2d136\"","requestID":"285abe00-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"285abe00-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4d29be0d514c31f0be33730494056bb0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"285b3330-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"663a9f18-a70f-4e3b-8d08-0fd3c634d629\" in room \"http://localhost/rooms/6026acf8-2ce4-43b6-bab8-53e65aa2d136\"","requestID":"285b3330-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"285b3330-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4d29be0d514c31f0be33730494056bb0","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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac"},{"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/312f5ee3-4503-4089-ac2f-c30f7cb73f3c"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524"}}},"level":"info","message":"received a callback","requestID":"4d29be0d514c31f0be33730494056bb0"} device-1 | {"data":{"peerconnection":"4aae4a5e-5ebe-4c39-9e77-d52e2d165524","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"4d29be0d514c31f0be33730494056bb0","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"4d29be0d514c31f0be33730494056bb0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"5b112268f6250d7dbd7755f783c3eaec"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"285e1960-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6e892bca-e79d-4584-b4c6-94d81536bc6b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.4276867} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.82448,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} device-1 | {"data":{"peerconnection":"4aae4a5e-5ebe-4c39-9e77-d52e2d165524","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"285e1960-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"285e1960-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"285e1960-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/signaling 200 15ms","method":"POST","requestID":"285e1960-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/signaling"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4aae4a5e-5ebe-4c39-9e77-d52e2d165524","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2860d880-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9c8f07ed3b1a1b7258cca68233726d35","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"9c8f07ed3b1a1b7258cca68233726d35","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":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","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/b2f3da78-c73c-4114-9103-ca30c0f597ac"},{"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/312f5ee3-4503-4089-ac2f-c30f7cb73f3c"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524"}}},"level":"info","message":"received a callback","requestID":"9c8f07ed3b1a1b7258cca68233726d35"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14c485f9-6171-461a-9be0-455cc5290669","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.4453602} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.442434,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2860d880-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2860d880-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"28621100-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2860d880-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c/signaling 200 13ms","method":"POST","requestID":"2860d880-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4aae4a5e-5ebe-4c39-9e77-d52e2d165524","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f7aa9397-32fb-421a-9c8f-83749928f3c8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.4533658} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.480806,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"28621100-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524","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":"28621100-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"28621100-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524 200 10ms","method":"GET","requestID":"28621100-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"9c8f07ed3b1a1b7258cca68233726d35","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"9c8f07ed3b1a1b7258cca68233726d35"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"286656c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.031639,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"74f31ae9-3119-4d17-8ba7-6ee87e81132b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.4820147} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"286656c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","object_type":"device","rebac_allow":false,"scope_allow":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":"286656c0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"286656c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/signaling 200 17ms","method":"POST","requestID":"286656c0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"28696400-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"efc1ef2f-c62b-4ff2-b2ab-2b20c05c99d0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.5019708} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.095303,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"28696400-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","object_type":"device","rebac_allow":false,"scope_allow":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":"28696400-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc","level":"info","message":"auth send jwt","requestID":"145fa387d61ef8df6d67d6dcad1d3eaa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"145fa387d61ef8df6d67d6dcad1d3eaa","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199","requestID":"145fa387d61ef8df6d67d6dcad1d3eaa"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"28696400-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c/signaling 200 17ms","method":"POST","requestID":"28696400-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.958464,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"145fa387d61ef8df6d67d6dcad1d3eaa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"145fa387d61ef8df6d67d6dcad1d3eaa","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199","requestID":"145fa387d61ef8df6d67d6dcad1d3eaa"} gateway-1 | {"time_local":"07/Oct/2024:09:33:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"145fa387d61ef8df6d67d6dcad1d3eaa"} experiment-1 | {"level":"info","message":"GET /experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199 200 10ms","method":"GET","requestID":"145fa387d61ef8df6d67d6dcad1d3eaa","responseTime":10,"status":200,"url":"/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc","level":"info","message":"auth send jwt","requestID":"62cb624d94ee002fab3ce1b2380389c9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"62cb624d94ee002fab3ce1b2380389c9","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199","requestID":"62cb624d94ee002fab3ce1b2380389c9"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.649442,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62cb624d94ee002fab3ce1b2380389c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"62cb624d94ee002fab3ce1b2380389c9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Attempting to finish experiment","requestID":"62cb624d94ee002fab3ce1b2380389c9"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"286f5770-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.624482,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"286f5770-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"286f5770-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6026acf8-2ce4-43b6-bab8-53e65aa2d136?id=027341d9-b3c3-446d-9123-6858456cbd35 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.146","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f237d0f20bfc40e3e81ea281476fd6ec"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"027341d9-b3c3-446d-9123-6858456cbd35\" in room \"http://localhost/rooms/6026acf8-2ce4-43b6-bab8-53e65aa2d136\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"027341d9-b3c3-446d-9123-6858456cbd35\" from room \"http://localhost/rooms/6026acf8-2ce4-43b6-bab8-53e65aa2d136\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524","device":"b2f3da78-c73c-4114-9103-ca30c0f597ac","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"07/Oct/2024:09:33:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/6026acf8-2ce4-43b6-bab8-53e65aa2d136?id=663a9f18-a70f-4e3b-8d08-0fd3c634d629 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.147","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"0158ec3cd76d6f1d6c41afdd31ff26ab"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"663a9f18-a70f-4e3b-8d08-0fd3c634d629\" in room \"http://localhost/rooms/6026acf8-2ce4-43b6-bab8-53e65aa2d136\""} device-1 | {"data":{"peerconnection":"4aae4a5e-5ebe-4c39-9e77-d52e2d165524","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"663a9f18-a70f-4e3b-8d08-0fd3c634d629\" from room \"http://localhost/rooms/6026acf8-2ce4-43b6-bab8-53e65aa2d136\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6878bb32d7831e667afced7087fd3d00","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6878bb32d7831e667afced7087fd3d00","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cffcb1dacf458638b2e86c3df053d52e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cffcb1dacf458638b2e86c3df053d52e","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4aae4a5e-5ebe-4c39-9e77-d52e2d165524': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4aae4a5e-5ebe-4c39-9e77-d52e2d165524","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"eff75a9c-d549-430c-8fd8-c5d7f555f5bd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.5532289} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"945666a0-f60c-4b09-8e88-fd624502647e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.5535226} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"286f5770-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/update"} 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/b2f3da78-c73c-4114-9103-ca30c0f597ac"},{"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/312f5ee3-4503-4089-ac2f-c30f7cb73f3c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524"}}},"level":"info","message":"received a callback","requestID":"6878bb32d7831e667afced7087fd3d00"} 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/b2f3da78-c73c-4114-9103-ca30c0f597ac"},{"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/312f5ee3-4503-4089-ac2f-c30f7cb73f3c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524"}}},"level":"info","message":"received a callback","requestID":"cffcb1dacf458638b2e86c3df053d52e"} device-1 | {"data":{"peerconnection":"4aae4a5e-5ebe-4c39-9e77-d52e2d165524","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"286f5770-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524 204 38ms","method":"DELETE","requestID":"286f5770-848f-11ef-9233-95baf63f17e0","responseTime":38,"status":204,"url":"/peerconnections/4aae4a5e-5ebe-4c39-9e77-d52e2d165524"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"},"level":"info","message":"Successfully finished experiment","requestID":"62cb624d94ee002fab3ce1b2380389c9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2877e2f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb2f3da78-c73c-4114-9103-ca30c0f597ac","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a41b69e0-f42d-400c-bcd2-c398b6bb1701","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.596617} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.788112,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2877e2f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac","object_type":"device","rebac_allow":false,"scope_allow":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":"2877e2f0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2877e2f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/signaling 200 12ms","method":"POST","requestID":"2877e2f0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/b2f3da78-c73c-4114-9103-ca30c0f597ac/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff5883b7a-c263-4120-94b5-ff7a4fe34199': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff5883b7a-c263-4120-94b5-ff7a4fe34199","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"76552970-6511-4123-92df-9ab9a01d80c1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.60378} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d5bd7fdd-23ed-47af-baed-c9d704fa340c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.6040924} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"62cb624d94ee002fab3ce1b2380389c9","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"287a05d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F312f5ee3-4503-4089-ac2f-c30f7cb73f3c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"61c3daa8-f44f-4e14-bcd3-851b861d2d15","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.6102595} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.374939,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"287a05d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c","object_type":"device","rebac_allow":false,"scope_allow":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":"287a05d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"287a05d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c/signaling 200 9ms","method":"POST","requestID":"287a05d0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199","requestID":"62cb624d94ee002fab3ce1b2380389c9"} gateway-1 | {"time_local":"07/Oct/2024:09:33:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"62cb624d94ee002fab3ce1b2380389c9"} gateway-1 | {"time_local":"07/Oct/2024:09:33:06 +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.193","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"0d760fea393e94756f95710dc85a8ac0"} experiment-1 | {"level":"info","message":"DELETE /experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199 204 143ms","method":"DELETE","requestID":"62cb624d94ee002fab3ce1b2380389c9","responseTime":143,"status":204,"url":"/experiments/f5883b7a-c263-4120-94b5-ff7a4fe34199"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 121ms","method":"POST","requestID":"6878bb32d7831e667afced7087fd3d00","responseTime":121,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"6878bb32d7831e667afced7087fd3d00"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc","level":"info","message":"auth send jwt","requestID":"a643e18250e279cc4fd91ea9f9eb488f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"cffcb1dacf458638b2e86c3df053d52e","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"cffcb1dacf458638b2e86c3df053d52e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a643e18250e279cc4fd91ea9f9eb488f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a643e18250e279cc4fd91ea9f9eb488f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.742449,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a643e18250e279cc4fd91ea9f9eb488f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/312f5ee3-4503-4089-ac2f-c30f7cb73f3c' closed"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a643e18250e279cc4fd91ea9f9eb488f","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:06 +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.723","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"13f9bf677007f22e6bc0fea8c0fd4b7f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d6a2b7d1-278d-4222-8ca7-c926e1df310a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.6941302} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a643e18250e279cc4fd91ea9f9eb488f","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/b2f3da78-c73c-4114-9103-ca30c0f597ac' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2c6eecf-f14d-49c1-8202-ad013b0fe287","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.699448} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a643e18250e279cc4fd91ea9f9eb488f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"90b1efbe-c9ba-4f3a-8a97-29db440e7da7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.7148378} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f9766f6-6a5b-4cc0-97db-859b3d7118fb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.7151015} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"a643e18250e279cc4fd91ea9f9eb488f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.714819532Z"}]},"request_id":"7c9d338a-5dd3-42f4-90e9-086cc6d812e7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.7197113} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a643e18250e279cc4fd91ea9f9eb488f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a643e18250e279cc4fd91ea9f9eb488f"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"a643e18250e279cc4fd91ea9f9eb488f","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:06 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a643e18250e279cc4fd91ea9f9eb488f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc","level":"info","message":"auth send jwt","requestID":"6e64917ccaba75bd4b7580a1ccc1c441"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6e64917ccaba75bd4b7580a1ccc1c441","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6e64917ccaba75bd4b7580a1ccc1c441"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.737356,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:06Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6e64917ccaba75bd4b7580a1ccc1c441","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293586,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4Nn0.fIvXyHLyKdT0nv7LC2JIPL6hmoL4qK7nVSKT8Z1q9Tc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6e64917ccaba75bd4b7580a1ccc1c441","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"91b49578-0fd5-407f-bbaa-8d3949b99167","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.744166} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6e64917ccaba75bd4b7580a1ccc1c441","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"29e70150-fd24-4dc6-a63c-2c0a8d7c7c18","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.7492058} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6e64917ccaba75bd4b7580a1ccc1c441","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"d5e34174-f83e-4ec6-b709-52fbaaaefcef","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.760225} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"80a82d70-b2da-42b8-8b48-35988ed69134","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.7603571} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"6e64917ccaba75bd4b7580a1ccc1c441","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.760206297Z"}]},"request_id":"a6839de0-fee2-439c-aaa1-a3d88d83a53a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293586.765248} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6e64917ccaba75bd4b7580a1ccc1c441","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6e64917ccaba75bd4b7580a1ccc1c441"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6e64917ccaba75bd4b7580a1ccc1c441"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"6e64917ccaba75bd4b7580a1ccc1c441","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4N30.eAmj1wK6EFYutT62z-b43qQTVbla-ZxsQmG4sBzOEOs","level":"info","message":"auth send jwt","requestID":"7172e05a78027d85f8066c9deac3d612"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7172e05a78027d85f8066c9deac3d612","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7172e05a78027d85f8066c9deac3d612"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.696158,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7172e05a78027d85f8066c9deac3d612","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293587,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4N30.eAmj1wK6EFYutT62z-b43qQTVbla-ZxsQmG4sBzOEOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7172e05a78027d85f8066c9deac3d612","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.714819532Z"}]},"request_id":"8b65df4d-920d-4c11-a5f6-0e243cc92dd1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293587.2543025} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7172e05a78027d85f8066c9deac3d612","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"613ff5e0-e516-4548-9936-774094c6ac0a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293587.2632697} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"7172e05a78027d85f8066c9deac3d612","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.714819532Z"}]},"request_id":"c7dbacbf-ada4-4ec0-a62f-0ef035a950b0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293587.2768424} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7172e05a78027d85f8066c9deac3d612","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7172e05a78027d85f8066c9deac3d612"} device-1 | {"level":"info","message":"PATCH /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f 200 43ms","method":"PATCH","requestID":"7172e05a78027d85f8066c9deac3d612","responseTime":43,"status":200,"url":"/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f"} gateway-1 | {"time_local":"07/Oct/2024:09:33:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.048","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"7172e05a78027d85f8066c9deac3d612"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4N30.eAmj1wK6EFYutT62z-b43qQTVbla-ZxsQmG4sBzOEOs","level":"info","message":"auth send jwt","requestID":"0e0694f81923b98aae3f73ef4da97a1f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0e0694f81923b98aae3f73ef4da97a1f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0e0694f81923b98aae3f73ef4da97a1f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.362483,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:07Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0e0694f81923b98aae3f73ef4da97a1f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293587,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4N30.eAmj1wK6EFYutT62z-b43qQTVbla-ZxsQmG4sBzOEOs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0e0694f81923b98aae3f73ef4da97a1f","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0e0694f81923b98aae3f73ef4da97a1f"} gateway-1 | {"time_local":"07/Oct/2024:09:33:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f/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.9","requestID":"0e0694f81923b98aae3f73ef4da97a1f"} device-1 | {"level":"info","message":"POST /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f/websocket 200 19ms","method":"POST","requestID":"0e0694f81923b98aae3f73ef4da97a1f","responseTime":19,"status":200,"url":"/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"98b6f9dc426109dc5816de8ae762fca1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"98b6f9dc426109dc5816de8ae762fca1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/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":"98b6f9dc426109dc5816de8ae762fca1"} device-1 | {"level":"info","message":"OPTIONS /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/websocket 200 1ms","method":"OPTIONS","requestID":"98b6f9dc426109dc5816de8ae762fca1","responseTime":1,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ","level":"info","message":"auth send jwt","requestID":"16d2b0bb69d47cbcc621284da9f7da45"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"16d2b0bb69d47cbcc621284da9f7da45","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"16d2b0bb69d47cbcc621284da9f7da45"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.298153,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"16d2b0bb69d47cbcc621284da9f7da45","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293588,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"16d2b0bb69d47cbcc621284da9f7da45","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"16d2b0bb69d47cbcc621284da9f7da45"} device-1 | {"level":"info","message":"POST /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/websocket 200 24ms","method":"POST","requestID":"16d2b0bb69d47cbcc621284da9f7da45","responseTime":24,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:33:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/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":"16d2b0bb69d47cbcc621284da9f7da45"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5397c1e654daa20e199444842d6a64ce","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5397c1e654daa20e199444842d6a64ce","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748? 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":"5397c1e654daa20e199444842d6a64ce"} device-1 | {"level":"info","message":"OPTIONS /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748? 200 1ms","method":"OPTIONS","requestID":"5397c1e654daa20e199444842d6a64ce","responseTime":1,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ","level":"info","message":"auth send jwt","requestID":"e440f87522e9c86c699400ef8ee8750c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e440f87522e9c86c699400ef8ee8750c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e440f87522e9c86c699400ef8ee8750c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.410318,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e440f87522e9c86c699400ef8ee8750c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293588,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e440f87522e9c86c699400ef8ee8750c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.760206297Z"}]},"request_id":"1e9c41bb-2bfb-4e1e-9cea-3abb1a1ae574","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293588.87813} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e440f87522e9c86c699400ef8ee8750c","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"575c489d-6738-4581-bafb-8f8bd610e6cf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293588.8886158} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"e440f87522e9c86c699400ef8ee8750c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.760206297Z"}]},"request_id":"b944c204-4a37-4a27-95cc-e76e239d55ef","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293588.901375} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e440f87522e9c86c699400ef8ee8750c","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e440f87522e9c86c699400ef8ee8750c"} device-1 | {"level":"info","message":"PATCH /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748? 200 44ms","method":"PATCH","requestID":"e440f87522e9c86c699400ef8ee8750c","responseTime":44,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748? 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":"e440f87522e9c86c699400ef8ee8750c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ","level":"info","message":"auth send jwt","requestID":"532d02f87ca69be7bba84ee828f14d46"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"532d02f87ca69be7bba84ee828f14d46","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"532d02f87ca69be7bba84ee828f14d46"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.091382,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"532d02f87ca69be7bba84ee828f14d46","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293588,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"532d02f87ca69be7bba84ee828f14d46","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.714819532Z"}]},"request_id":"f7eef9e3-232a-4c3e-8f1e-9f1f5b93e410","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293588.9329634} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"532d02f87ca69be7bba84ee828f14d46","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"532d02f87ca69be7bba84ee828f14d46"} gateway-1 | {"time_local":"07/Oct/2024:09:33:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f? 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":"532d02f87ca69be7bba84ee828f14d46"} device-1 | {"level":"info","message":"GET /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f? 200 20ms","method":"GET","requestID":"532d02f87ca69be7bba84ee828f14d46","responseTime":20,"status":200,"url":"/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ","level":"info","message":"auth send jwt","requestID":"49ad30ddf84b4d07b962b192d1d9f8d5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"49ad30ddf84b4d07b962b192d1d9f8d5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"49ad30ddf84b4d07b962b192d1d9f8d5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.221807,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"49ad30ddf84b4d07b962b192d1d9f8d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293588,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"49ad30ddf84b4d07b962b192d1d9f8d5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.760206297Z"}]},"request_id":"ec599c64-ffd1-41f3-b8ea-a92a4b7ff834","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293588.9599488} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"49ad30ddf84b4d07b962b192d1d9f8d5","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"49ad30ddf84b4d07b962b192d1d9f8d5"} gateway-1 | {"time_local":"07/Oct/2024:09:33:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748? 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":"49ad30ddf84b4d07b962b192d1d9f8d5"} device-1 | {"level":"info","message":"GET /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748? 200 16ms","method":"GET","requestID":"49ad30ddf84b4d07b962b192d1d9f8d5","responseTime":16,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ","level":"info","message":"auth send jwt","requestID":"1c6c7716c076dc1ff9219f509963da4b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"1c6c7716c076dc1ff9219f509963da4b","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1c6c7716c076dc1ff9219f509963da4b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.37002,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1c6c7716c076dc1ff9219f509963da4b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293588,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1c6c7716c076dc1ff9219f509963da4b","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Attempting to run experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Attempting to book experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Successfully booked experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"29ead3e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"29eb9730-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.628796,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"29ead3e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293588,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"29ead3e0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.145559,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"29eb9730-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293588,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"29eb9730-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.714819532Z"}]},"request_id":"ea2aa7a0-1ed5-4d52-ae1f-c3c91c23b608","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.03819} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"29ead3e0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.760206297Z"}]},"request_id":"7a11a5ec-1087-4534-82df-f78adc254d5d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.0400205} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"29eb9730-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"29ead3e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f? 200 25ms","method":"GET","requestID":"29ead3e0-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"29eb9730-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748? 200 22ms","method":"GET","requestID":"29eb9730-848f-11ef-9233-95baf63f17e0","responseTime":22,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Setting up experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Successfully set up experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"29f904b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"29f979e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"29f9ef10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.313118,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"29f904b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293588,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Successfully running experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"29f904b0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.367256,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"29f979e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293588,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"29f979e0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.430695,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bcdf3056-b270-44f5-8ea5-13ca2ae63f52","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.1335166} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.714819532Z"}]},"request_id":"fd80b771-1196-40cc-911e-e561803d567b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.1338108} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"29f904b0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"29f9ef10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","object_type":"device","rebac_allow":false,"scope_allow":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":"29f9ef10-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.760206297Z"}]},"request_id":"6b7ec24d-eb79-4991-bc75-bec8ccc99afb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.13622} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"29f979e0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"29f904b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f? 200 33ms","method":"GET","requestID":"29f904b0-848f-11ef-9233-95baf63f17e0","responseTime":33,"status":200,"url":"/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"29f9ef10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f/signaling 200 29ms","method":"POST","requestID":"29f9ef10-848f-11ef-9233-95baf63f17e0","responseTime":29,"status":200,"url":"/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"29f979e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F84457563-fb41-4232-9b4a-6f5fffb9f9a0#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F84457563-fb41-4232-9b4a-6f5fffb9f9a0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"5969ac8b-69be-4351-b562-3e38d366d6bc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.1531208} device-1 | {"level":"info","message":"GET /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748? 200 35ms","method":"GET","requestID":"29f979e0-848f-11ef-9233-95baf63f17e0","responseTime":35,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"00bfa55e-838f-4b77-bc8d-f1cb5f2ea70e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.15363} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"29ff1f30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"1c6c7716c076dc1ff9219f509963da4b","responseTime":28,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"29ff9460-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c402ca9-02ee-45d8-a4ff-9bc7d45ebbf5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.1629593} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.519054,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"29ff1f30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","object_type":"device","rebac_allow":false,"scope_allow":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":"29ff1f30-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"10ba32d2-001f-4729-8366-c1c424b35a1e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.165921} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.287598,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"29ff9460-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","object_type":"device","rebac_allow":false,"scope_allow":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":"29ff9460-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1c6c7716c076dc1ff9219f509963da4b"} gateway-1 | {"time_local":"07/Oct/2024:09:33:09 +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":"1c6c7716c076dc1ff9219f509963da4b"} experiment-1 | {"level":"info","message":"POST /experiments? 201 194ms","method":"POST","requestID":"1c6c7716c076dc1ff9219f509963da4b","responseTime":194,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"29ff1f30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/signaling 200 16ms","method":"POST","requestID":"29ff1f30-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"29ff9460-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f/signaling 200 16ms","method":"POST","requestID":"29ff9460-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OX0.8Q--tKKDEKS3EOz2u_E1pFpHdGab1gyu_F0zc0UB1lk","level":"info","message":"auth send jwt","requestID":"afcdffb547f6f8ade5aa3a46605c36c3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"afcdffb547f6f8ade5aa3a46605c36c3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a025380-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"afcdffb547f6f8ade5aa3a46605c36c3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c4041d5e-a8be-4f1f-b821-ab5bdc2eaac9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.181707} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71619,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"afcdffb547f6f8ade5aa3a46605c36c3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293589,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OX0.8Q--tKKDEKS3EOz2u_E1pFpHdGab1gyu_F0zc0UB1lk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"afcdffb547f6f8ade5aa3a46605c36c3","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.712677,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2a025380-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","object_type":"device","rebac_allow":false,"scope_allow":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":"2a025380-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.714819532Z"}]},"request_id":"6b659fd8-b506-4c93-a143-99ccd6da5304","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.186108} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a025380-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"afcdffb547f6f8ade5aa3a46605c36c3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/signaling 200 11ms","method":"POST","requestID":"2a025380-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a047660-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a049d70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"afcdffb547f6f8ade5aa3a46605c36c3"} gateway-1 | {"time_local":"07/Oct/2024:09:33:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f? 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":"afcdffb547f6f8ade5aa3a46605c36c3"} device-1 | {"level":"info","message":"GET /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f? 200 15ms","method":"GET","requestID":"afcdffb547f6f8ade5aa3a46605c36c3","responseTime":15,"status":200,"url":"/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724583,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2a047660-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293588,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a047660-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.551933,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2a049d70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293588,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a049d70-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OX0.8Q--tKKDEKS3EOz2u_E1pFpHdGab1gyu_F0zc0UB1lk","level":"info","message":"auth send jwt","requestID":"895e4cc2be06238dde1d1e428bd492d8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"895e4cc2be06238dde1d1e428bd492d8","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"895e4cc2be06238dde1d1e428bd492d8"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.714819532Z"}]},"request_id":"9bef1355-31b9-4e39-80c4-a003b5d33f09","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.1992164} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2a047660-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.760206297Z"}]},"request_id":"d63759c6-9d44-46f4-b143-fe3abdd00069","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.2010472} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2a049d70-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a047660-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.670404,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} device-1 | {"level":"info","message":"GET /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f? 200 14ms","method":"GET","requestID":"2a047660-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"895e4cc2be06238dde1d1e428bd492d8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293589,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OX0.8Q--tKKDEKS3EOz2u_E1pFpHdGab1gyu_F0zc0UB1lk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"895e4cc2be06238dde1d1e428bd492d8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a049d70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748? 200 16ms","method":"GET","requestID":"2a049d70-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:06.760206297Z"}]},"request_id":"9835a330-fd0a-49e5-9234-a846f3c86d2d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.2079158} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Building connection plan","requestID":"1c6c7716c076dc1ff9219f509963da4b"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"8a78906c-9832-476a-9676-363c695c82ea"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"00e1ec85-5eb4-45e8-88c4-d08f347bd624"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"0c233a39-7f8a-42f6-9f1b-b1b1fe2de7f8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1c6c7716c076dc1ff9219f509963da4b"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"895e4cc2be06238dde1d1e428bd492d8","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"2a0783a0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"2a0783a0-848f-11ef-8885-7d835fc08c91"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"895e4cc2be06238dde1d1e428bd492d8"} gateway-1 | {"time_local":"07/Oct/2024:09:33:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748? 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":"895e4cc2be06238dde1d1e428bd492d8"} device-1 | {"level":"info","message":"GET /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748? 200 12ms","method":"GET","requestID":"895e4cc2be06238dde1d1e428bd492d8","responseTime":12,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"2a0783a0-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/4c53b48e-fdd7-4224-b1ec-b173447eb6f7?id=7a522fa2-be1e-43ab-89bc-b0d4276d75cf","ws://localhost/rooms/4c53b48e-fdd7-4224-b1ec-b173447eb6f7?id=bb8fd04a-bea2-47cc-80ef-327128d5d366"]},"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/bdc867de-c0eb-4571-b628-d8e32c8fe29f"},{"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/ee77126f-89ab-4d3e-99f8-3f86bc3c0748"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"1c6c7716c076dc1ff9219f509963da4b"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2a081fe0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.858624,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2a081fe0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293588,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OH0.BBw30cjMs0_ZdocPSPKSxFVcAvfMX3XCC8PXXihy8lQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2a081fe0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"ff659ccb-d241-4fc7-ab43-418e08ba5d43","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.2278059} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"17a6c865-27f9-448e-adfd-0874175f69bc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.2280946} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"2a081fe0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2a081fe0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2a081fe0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9'","requestID":"2a081fe0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9'","requestID":"2a081fe0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2a081fe0-848f-11ef-9233-95baf63f17e0"} 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":"2a081fe0-848f-11ef-9233-95baf63f17e0","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":"2a081fe0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"2a0dec40-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7a522fa2-be1e-43ab-89bc-b0d4276d75cf\" in room \"http://localhost/rooms/4c53b48e-fdd7-4224-b1ec-b173447eb6f7\"","requestID":"2a0dec40-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"2a0dec40-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d01e4c0c5569e0926abcfe1e9b370992","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d01e4c0c5569e0926abcfe1e9b370992","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f"},{"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/ee77126f-89ab-4d3e-99f8-3f86bc3c0748"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9"}}},"level":"info","message":"received a callback","requestID":"d01e4c0c5569e0926abcfe1e9b370992"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"2a0e8880-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"bb8fd04a-bea2-47cc-80ef-327128d5d366\" in room \"http://localhost/rooms/4c53b48e-fdd7-4224-b1ec-b173447eb6f7\"","requestID":"2a0e8880-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"2a0e8880-848f-11ef-8885-7d835fc08c91"} device-1 | {"data":{"peerconnection":"b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 15ms","method":"POST","requestID":"d01e4c0c5569e0926abcfe1e9b370992","responseTime":15,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.019","http_referrer":"","http_user_agent":"node-fetch","requestID":"d01e4c0c5569e0926abcfe1e9b370992"} device-1 | {"data":{"peerconnection":"b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1c6c7716c076dc1ff9219f509963da4b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a13b8a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"170c7f1cbb29d3483f43e6b43f4045a7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"649eb47b-6b04-4131-9039-b45e3fc81db6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.29553} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"170c7f1cbb29d3483f43e6b43f4045a7","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.422251,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2a13b8a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","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":["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/bdc867de-c0eb-4571-b628-d8e32c8fe29f"},{"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/ee77126f-89ab-4d3e-99f8-3f86bc3c0748"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9"}}},"level":"info","message":"received a callback","requestID":"170c7f1cbb29d3483f43e6b43f4045a7"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2a13b8a0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"2a158d60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a13b8a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f/signaling 200 15ms","method":"POST","requestID":"2a13b8a0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb3c0d684-d3f7-45fb-8ab5-581f70d1e1c9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"144aae14-baaa-4838-af48-fbf629444fea","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.3073928} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a1650b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.283681,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2a158d60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9","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":"2a158d60-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"2a158d60-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} device-1 | {"level":"info","message":"GET /peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9 200 9ms","method":"GET","requestID":"2a158d60-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"86d16a90-7d46-44fa-9ca8-89ca0aad0b21","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.3136306} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.348787,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2a1650b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2a1650b0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a1650b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/signaling 200 11ms","method":"POST","requestID":"2a1650b0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"170c7f1cbb29d3483f43e6b43f4045a7","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.035","http_referrer":"","http_user_agent":"node-fetch","requestID":"170c7f1cbb29d3483f43e6b43f4045a7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a19ac10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"330f76e0-3458-4bda-9566-0a31cab778bf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.333856} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.462001,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2a19ac10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2a19ac10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a19ac10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f/signaling 200 8ms","method":"POST","requestID":"2a19ac10-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a1b59c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"15133d1a-571a-429a-be36-d730a60bb9d0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.344647} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.753548,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2a1b59c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2a1b59c0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a1b59c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/signaling 200 8ms","method":"POST","requestID":"2a1b59c0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OX0.8Q--tKKDEKS3EOz2u_E1pFpHdGab1gyu_F0zc0UB1lk","level":"info","message":"auth send jwt","requestID":"a31fc6037c3278c05d3b85f73105b832"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a31fc6037c3278c05d3b85f73105b832","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0","requestID":"a31fc6037c3278c05d3b85f73105b832"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.785727,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a31fc6037c3278c05d3b85f73105b832","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293589,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OX0.8Q--tKKDEKS3EOz2u_E1pFpHdGab1gyu_F0zc0UB1lk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a31fc6037c3278c05d3b85f73105b832","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0","requestID":"a31fc6037c3278c05d3b85f73105b832"} gateway-1 | {"time_local":"07/Oct/2024:09:33:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0 HTTP/1.1","status": "200","body_bytes_sent":"885","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a31fc6037c3278c05d3b85f73105b832"} experiment-1 | {"level":"info","message":"GET /experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0 200 10ms","method":"GET","requestID":"a31fc6037c3278c05d3b85f73105b832","responseTime":10,"status":200,"url":"/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OX0.8Q--tKKDEKS3EOz2u_E1pFpHdGab1gyu_F0zc0UB1lk","level":"info","message":"auth send jwt","requestID":"b72573827e5f01f0e0993e4c82a8294f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b72573827e5f01f0e0993e4c82a8294f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0","requestID":"b72573827e5f01f0e0993e4c82a8294f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.98957,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b72573827e5f01f0e0993e4c82a8294f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293589,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OX0.8Q--tKKDEKS3EOz2u_E1pFpHdGab1gyu_F0zc0UB1lk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b72573827e5f01f0e0993e4c82a8294f","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Attempting to finish experiment","requestID":"b72573827e5f01f0e0993e4c82a8294f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"2a234900-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.910024,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2a234900-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293589,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OX0.8Q--tKKDEKS3EOz2u_E1pFpHdGab1gyu_F0zc0UB1lk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2a234900-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/4c53b48e-fdd7-4224-b1ec-b173447eb6f7?id=7a522fa2-be1e-43ab-89bc-b0d4276d75cf HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.153","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"5b7cc47e73d855387f38d507c46705bb"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"7a522fa2-be1e-43ab-89bc-b0d4276d75cf\" in room \"http://localhost/rooms/4c53b48e-fdd7-4224-b1ec-b173447eb6f7\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"7a522fa2-be1e-43ab-89bc-b0d4276d75cf\" from room \"http://localhost/rooms/4c53b48e-fdd7-4224-b1ec-b173447eb6f7\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"07/Oct/2024:09:33:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/4c53b48e-fdd7-4224-b1ec-b173447eb6f7?id=bb8fd04a-bea2-47cc-80ef-327128d5d366 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.151","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f8f379de8e97602c1fe474ff01eede6a"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"bb8fd04a-bea2-47cc-80ef-327128d5d366\" in room \"http://localhost/rooms/4c53b48e-fdd7-4224-b1ec-b173447eb6f7\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"bb8fd04a-bea2-47cc-80ef-327128d5d366\" from room \"http://localhost/rooms/4c53b48e-fdd7-4224-b1ec-b173447eb6f7\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9","device":"ee77126f-89ab-4d3e-99f8-3f86bc3c0748","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1fb8fba7386e2519ff0d6316b452c3b0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1fb8fba7386e2519ff0d6316b452c3b0","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb3c0d684-d3f7-45fb-8ab5-581f70d1e1c9': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb3c0d684-d3f7-45fb-8ab5-581f70d1e1c9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"63f29487-5d9d-4e77-ad22-600d68a4ddea","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.4093523} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"786a1a0333913f1cc689775d1a0ecd62","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"23e0cd0c-d1b9-4921-8b15-92fe16df93ad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.4096966} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"786a1a0333913f1cc689775d1a0ecd62","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":"closed","url":"http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f"},{"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/ee77126f-89ab-4d3e-99f8-3f86bc3c0748"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9"}}},"level":"info","message":"received a callback","requestID":"1fb8fba7386e2519ff0d6316b452c3b0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"2a234900-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["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/bdc867de-c0eb-4571-b628-d8e32c8fe29f"},{"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/ee77126f-89ab-4d3e-99f8-3f86bc3c0748"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9"}}},"level":"info","message":"received a callback","requestID":"786a1a0333913f1cc689775d1a0ecd62"} device-1 | {"data":{"peerconnection":"b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"2a234900-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9 204 37ms","method":"DELETE","requestID":"2a234900-848f-11ef-9233-95baf63f17e0","responseTime":37,"status":204,"url":"/peerconnections/b3c0d684-d3f7-45fb-8ab5-581f70d1e1c9"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"},"level":"info","message":"Successfully finished experiment","requestID":"b72573827e5f01f0e0993e4c82a8294f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a2c49b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbdc867de-c0eb-4571-b628-d8e32c8fe29f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"983f1f9f-a526-43f1-ade2-f440fcc204fa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.4574897} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.598676,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2a2c49b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f","object_type":"device","rebac_allow":false,"scope_allow":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":"2a2c49b0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a2c49b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f/signaling 200 12ms","method":"POST","requestID":"2a2c49b0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F84457563-fb41-4232-9b4a-6f5fffb9f9a0': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F84457563-fb41-4232-9b4a-6f5fffb9f9a0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"7be55835-5361-484a-8ae5-78bda3695b97","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.4641917} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"968d58ca-576e-4960-8f02-a67fd7f7d54c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.4644427} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2a2e6c90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"b72573827e5f01f0e0993e4c82a8294f","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fee77126f-89ab-4d3e-99f8-3f86bc3c0748","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"886d7be3-b971-44db-9935-0ae2908beb3f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.4707887} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.030646,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2a2e6c90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2a2e6c90-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2a2e6c90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/signaling 200 12ms","method":"POST","requestID":"2a2e6c90-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/ee77126f-89ab-4d3e-99f8-3f86bc3c0748/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0","requestID":"b72573827e5f01f0e0993e4c82a8294f"} gateway-1 | {"time_local":"07/Oct/2024:09:33:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b72573827e5f01f0e0993e4c82a8294f"} gateway-1 | {"time_local":"07/Oct/2024:09:33:09 +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.227","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"e7d75759812a24a4da7efccaa0f9a58b"} experiment-1 | {"level":"info","message":"DELETE /experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0 204 155ms","method":"DELETE","requestID":"b72573827e5f01f0e0993e4c82a8294f","responseTime":155,"status":204,"url":"/experiments/84457563-fb41-4232-9b4a-6f5fffb9f9a0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"1fb8fba7386e2519ff0d6316b452c3b0","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"1fb8fba7386e2519ff0d6316b452c3b0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"786a1a0333913f1cc689775d1a0ecd62","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"786a1a0333913f1cc689775d1a0ecd62"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OX0.8Q--tKKDEKS3EOz2u_E1pFpHdGab1gyu_F0zc0UB1lk","level":"info","message":"auth send jwt","requestID":"0ab1c6fac1b630d83e91de36c8d99106"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0ab1c6fac1b630d83e91de36c8d99106","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"0ab1c6fac1b630d83e91de36c8d99106"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/bdc867de-c0eb-4571-b628-d8e32c8fe29f' closed"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} gateway-1 | {"time_local":"07/Oct/2024:09:33:09 +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.732","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"66a112a61d80b6d2c8a9bf672d7fffd7"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.855729,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0ab1c6fac1b630d83e91de36c8d99106","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293589,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OX0.8Q--tKKDEKS3EOz2u_E1pFpHdGab1gyu_F0zc0UB1lk"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"0ab1c6fac1b630d83e91de36c8d99106","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/ee77126f-89ab-4d3e-99f8-3f86bc3c0748' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8dcc7b43-464b-4b27-97bc-1b57fd8d870e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.5658917} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0ab1c6fac1b630d83e91de36c8d99106","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3917dc88-ce8d-42f2-96ae-0d263983fe4d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.5720026} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"0ab1c6fac1b630d83e91de36c8d99106","responseTime":7,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"1cdcabaa-246a-4651-9b62-5989d296a4d5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.5794618} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"107ca441-c6e7-45ac-bbd6-426fd6f99a2b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.5795147} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"0ab1c6fac1b630d83e91de36c8d99106","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.579442288Z"}]},"request_id":"390de96e-ad9a-4f2c-bf2b-97704b875b81","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.5849183} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0ab1c6fac1b630d83e91de36c8d99106","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"0ab1c6fac1b630d83e91de36c8d99106"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"0ab1c6fac1b630d83e91de36c8d99106","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0ab1c6fac1b630d83e91de36c8d99106"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OX0.8Q--tKKDEKS3EOz2u_E1pFpHdGab1gyu_F0zc0UB1lk","level":"info","message":"auth send jwt","requestID":"5d6433963678d09d33b23874177d0b26"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5d6433963678d09d33b23874177d0b26","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5d6433963678d09d33b23874177d0b26"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.795921,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:09Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5d6433963678d09d33b23874177d0b26","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293589,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU4OX0.8Q--tKKDEKS3EOz2u_E1pFpHdGab1gyu_F0zc0UB1lk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5d6433963678d09d33b23874177d0b26","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"01cd3b1a-18c5-4726-ac69-d3adceeb0ab7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.6121} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5d6433963678d09d33b23874177d0b26","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ee4c7ee8-73f8-4631-969a-c2bdf7e1a5f5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.6181483} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5d6433963678d09d33b23874177d0b26","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"3b12e28b-22bc-4f60-92d2-2b0b5de4bb13","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.6331341} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0b144fc5-3acf-42cf-ac3e-6d2e5151f799","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.6333838} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"5d6433963678d09d33b23874177d0b26","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.633116669Z"}]},"request_id":"b7678b35-de98-446d-802b-b935d6c88d8e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293589.637879} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5d6433963678d09d33b23874177d0b26","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5d6433963678d09d33b23874177d0b26"} gateway-1 | {"time_local":"07/Oct/2024:09:33:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5d6433963678d09d33b23874177d0b26"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"5d6433963678d09d33b23874177d0b26","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8","level":"info","message":"auth send jwt","requestID":"22375c2b68a5b3f73922dc0c1cfcf599"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"22375c2b68a5b3f73922dc0c1cfcf599","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8","level":"info","message":"auth send jwt","requestID":"aa0f5aec87f0172ad7f9648cea44fb6e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"aa0f5aec87f0172ad7f9648cea44fb6e","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"22375c2b68a5b3f73922dc0c1cfcf599"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"aa0f5aec87f0172ad7f9648cea44fb6e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.397311,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"22375c2b68a5b3f73922dc0c1cfcf599","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"22375c2b68a5b3f73922dc0c1cfcf599","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.678936,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"aa0f5aec87f0172ad7f9648cea44fb6e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"aa0f5aec87f0172ad7f9648cea44fb6e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.633116669Z"}]},"request_id":"1a48df61-a89e-4d6c-8322-2b013fe33ec6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.1229105} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"22375c2b68a5b3f73922dc0c1cfcf599","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.579442288Z"}]},"request_id":"54883463-9319-481d-8bd0-83be95aa79cb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.1241941} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aa0f5aec87f0172ad7f9648cea44fb6e","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4abf056b-5ce7-426c-bec5-573bd55cc844","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.1294677} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"22375c2b68a5b3f73922dc0c1cfcf599","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5938980f-0149-47e5-9ad7-cb129750e5fc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.1314774} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"aa0f5aec87f0172ad7f9648cea44fb6e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.579442288Z"}]},"request_id":"4b90e646-daeb-4aeb-8747-be1e01143226","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.1372163} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aa0f5aec87f0172ad7f9648cea44fb6e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"aa0f5aec87f0172ad7f9648cea44fb6e"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.043","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"aa0f5aec87f0172ad7f9648cea44fb6e"} device-1 | {"level":"info","message":"PATCH /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f 200 32ms","method":"PATCH","requestID":"aa0f5aec87f0172ad7f9648cea44fb6e","responseTime":32,"status":200,"url":"/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8","level":"info","message":"auth send jwt","requestID":"a9a39be6b9bceba5ad0d67b89306dd18"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a9a39be6b9bceba5ad0d67b89306dd18","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a9a39be6b9bceba5ad0d67b89306dd18"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.630101,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a9a39be6b9bceba5ad0d67b89306dd18","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a9a39be6b9bceba5ad0d67b89306dd18","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.633116669Z"}]},"request_id":"ec3ac12a-3863-4d17-bc43-f465313f75d0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.1489575} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"22375c2b68a5b3f73922dc0c1cfcf599","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"22375c2b68a5b3f73922dc0c1cfcf599"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.055","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"22375c2b68a5b3f73922dc0c1cfcf599"} device-1 | {"level":"info","message":"PATCH /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01 200 46ms","method":"PATCH","requestID":"22375c2b68a5b3f73922dc0c1cfcf599","responseTime":46,"status":200,"url":"/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8","level":"info","message":"auth send jwt","requestID":"9688d096e931af913d25fb7b5222e454"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9688d096e931af913d25fb7b5222e454","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9688d096e931af913d25fb7b5222e454"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.741888,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9688d096e931af913d25fb7b5222e454","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9688d096e931af913d25fb7b5222e454","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a9a39be6b9bceba5ad0d67b89306dd18"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f/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.9","requestID":"a9a39be6b9bceba5ad0d67b89306dd18"} device-1 | {"level":"info","message":"POST /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f/websocket 200 18ms","method":"POST","requestID":"a9a39be6b9bceba5ad0d67b89306dd18","responseTime":18,"status":200,"url":"/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9688d096e931af913d25fb7b5222e454"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01/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.9","requestID":"9688d096e931af913d25fb7b5222e454"} device-1 | {"level":"info","message":"POST /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01/websocket 200 19ms","method":"POST","requestID":"9688d096e931af913d25fb7b5222e454","responseTime":19,"status":200,"url":"/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8","level":"info","message":"auth send jwt","requestID":"c22ff19396bc21bfd1eaee19cd6f0d5a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c22ff19396bc21bfd1eaee19cd6f0d5a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c22ff19396bc21bfd1eaee19cd6f0d5a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.968219,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c22ff19396bc21bfd1eaee19cd6f0d5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c22ff19396bc21bfd1eaee19cd6f0d5a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.579442288Z"}]},"request_id":"b0fea690-7bdf-4706-8dab-d325d9132a40","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.2111166} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c22ff19396bc21bfd1eaee19cd6f0d5a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c22ff19396bc21bfd1eaee19cd6f0d5a"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f? 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":"c22ff19396bc21bfd1eaee19cd6f0d5a"} device-1 | {"level":"info","message":"GET /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f? 200 16ms","method":"GET","requestID":"c22ff19396bc21bfd1eaee19cd6f0d5a","responseTime":16,"status":200,"url":"/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8","level":"info","message":"auth send jwt","requestID":"dfee9634a1a84d218420c3a0efe522f1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dfee9634a1a84d218420c3a0efe522f1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dfee9634a1a84d218420c3a0efe522f1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.656542,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"dfee9634a1a84d218420c3a0efe522f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dfee9634a1a84d218420c3a0efe522f1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.633116669Z"}]},"request_id":"b5b39197-bd77-4a9d-9748-a531b3549bc1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.2298665} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"dfee9634a1a84d218420c3a0efe522f1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dfee9634a1a84d218420c3a0efe522f1"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01? 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":"dfee9634a1a84d218420c3a0efe522f1"} device-1 | {"level":"info","message":"GET /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01? 200 14ms","method":"GET","requestID":"dfee9634a1a84d218420c3a0efe522f1","responseTime":14,"status":200,"url":"/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8","level":"info","message":"auth send jwt","requestID":"6829a1499edd8d12c82be9a297323818"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6829a1499edd8d12c82be9a297323818","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"6829a1499edd8d12c82be9a297323818"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.161659,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6829a1499edd8d12c82be9a297323818","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6829a1499edd8d12c82be9a297323818","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Attempting to run experiment","requestID":"6829a1499edd8d12c82be9a297323818"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Attempting to book experiment","requestID":"6829a1499edd8d12c82be9a297323818"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Successfully booked experiment","requestID":"6829a1499edd8d12c82be9a297323818"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2aac0100-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2aac2810-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.158549,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2aac0100-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2aac0100-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.11816,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2aac2810-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2aac2810-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.579442288Z"}]},"request_id":"23bb3229-3fff-4094-bdc1-a904072db828","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.2988298} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2aac0100-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.633116669Z"}]},"request_id":"338e5cd5-5009-4800-95cb-54f2f1825888","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.3003912} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2aac2810-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2aac0100-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f? 200 17ms","method":"GET","requestID":"2aac0100-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2aac2810-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01? 200 17ms","method":"GET","requestID":"2aac2810-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Setting up experiment","requestID":"6829a1499edd8d12c82be9a297323818"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"6829a1499edd8d12c82be9a297323818"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Successfully locked booking for experiment","requestID":"6829a1499edd8d12c82be9a297323818"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"6829a1499edd8d12c82be9a297323818"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"6829a1499edd8d12c82be9a297323818"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Attempting to update booking for experiment","requestID":"6829a1499edd8d12c82be9a297323818"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Successfully updated booking for experiment","requestID":"6829a1499edd8d12c82be9a297323818"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Successfully set up experiment","requestID":"6829a1499edd8d12c82be9a297323818"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2ab61320-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2ab68850-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2ab6fd80-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Successfully running experiment","requestID":"6829a1499edd8d12c82be9a297323818"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.971343,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2ab61320-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2ab61320-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.735023,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2ab68850-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"2ab68850-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.587655,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"677abda9-33e4-450d-8a92-044505bbe541","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.369597} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2ab6fd80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","object_type":"device","rebac_allow":false,"scope_allow":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":"2ab6fd80-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.579442288Z"}]},"request_id":"1c63fd52-b252-485e-9f5c-af8da05f8d01","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.374141} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"2ab61320-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.633116669Z"}]},"request_id":"6bbfbf8f-23e4-43e4-b548-95af62a3885c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.3793554} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"2ab68850-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2ab6fd80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f/signaling 200 24ms","method":"POST","requestID":"2ab6fd80-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2abb6a50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe8be9c4c-5aa5-46cb-b5f4-6f68731b6628#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe8be9c4c-5aa5-46cb-b5f4-6f68731b6628","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"b1a94bd0-7ac9-4f81-a68f-0f12c5e004f9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.3906102} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"33f0f06e-7990-4e9b-aa94-35bf3c5327c4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.3909369} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2ab61320-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f? 200 38ms","method":"GET","requestID":"2ab61320-848f-11ef-9233-95baf63f17e0","responseTime":38,"status":200,"url":"/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2ab68850-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01? 200 36ms","method":"GET","requestID":"2ab68850-848f-11ef-9233-95baf63f17e0","responseTime":36,"status":200,"url":"/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"6829a1499edd8d12c82be9a297323818","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d6959ab4-9b36-438a-a723-70c658d22e38","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.3948658} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.243057,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2abc54b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2abb6a50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","object_type":"device","rebac_allow":false,"scope_allow":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":"2abb6a50-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2abb6a50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01/signaling 200 11ms","method":"POST","requestID":"2abb6a50-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3d3c3973-5c9c-4735-8d12-419a9116b3dd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.4007666} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.399115,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2abc54b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","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/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"6829a1499edd8d12c82be9a297323818"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"2abc54b0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"816","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6829a1499edd8d12c82be9a297323818"} experiment-1 | {"level":"info","message":"POST /experiments? 201 160ms","method":"POST","requestID":"6829a1499edd8d12c82be9a297323818","responseTime":160,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2abc54b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f/signaling 200 11ms","method":"POST","requestID":"2abc54b0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8","level":"info","message":"auth send jwt","requestID":"7f0948a6552975b9d1566d997fb37491"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7f0948a6552975b9d1566d997fb37491","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2abe5080-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7f0948a6552975b9d1566d997fb37491"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.819492,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f0948a6552975b9d1566d997fb37491","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7f0948a6552975b9d1566d997fb37491","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3705d35-d3cb-45f4-99d2-0ff778cb159c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.4135084} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.913418,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2abe5080-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","object_type":"device","rebac_allow":false,"scope_allow":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":"2abe5080-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2abe5080-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01/signaling 200 10ms","method":"POST","requestID":"2abe5080-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.579442288Z"}]},"request_id":"08643a20-bd45-4bed-8552-6d502d5ca421","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.4193766} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"6829a1499edd8d12c82be9a297323818"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7f0948a6552975b9d1566d997fb37491","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2ac02540-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2ac09a70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.002586,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2ac02540-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2ac02540-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7f0948a6552975b9d1566d997fb37491"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.643042,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f? 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":"7f0948a6552975b9d1566d997fb37491"} device-1 | {"level":"info","message":"GET /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f? 200 18ms","method":"GET","requestID":"7f0948a6552975b9d1566d997fb37491","responseTime":18,"status":200,"url":"/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2ac09a70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2ac09a70-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8","level":"info","message":"auth send jwt","requestID":"b2868ef0b0ce759239b3eabec4708d5a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b2868ef0b0ce759239b3eabec4708d5a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.579442288Z"}]},"request_id":"a168a8e0-78ce-44ec-b961-f22a8d2a9aed","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.4312606} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b2868ef0b0ce759239b3eabec4708d5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2ac02540-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.633116669Z"}]},"request_id":"f2c12b76-17ef-43c3-ab48-fccea829160b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.4324903} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2ac09a70-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.036623,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b2868ef0b0ce759239b3eabec4708d5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b2868ef0b0ce759239b3eabec4708d5a","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2ac02540-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f? 200 19ms","method":"GET","requestID":"2ac02540-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2ac09a70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01? 200 17ms","method":"GET","requestID":"2ac09a70-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:09.633116669Z"}]},"request_id":"f4c6be22-28dd-47c3-b5e4-2dd86d3ab7cf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.4402773} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Building connection plan","requestID":"6829a1499edd8d12c82be9a297323818"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b2868ef0b0ce759239b3eabec4708d5a","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"5d7746ae-eb30-4b86-b62a-167bb2224169"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"3c0cb623-0041-471c-ad7d-b248da6bb2c3"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"e57660f2-fc51-4fc2-9451-4004d6d50b5d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"6829a1499edd8d12c82be9a297323818"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"2ac3a7b0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"2ac3a7b0-848f-11ef-8885-7d835fc08c91"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b2868ef0b0ce759239b3eabec4708d5a"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01? 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":"b2868ef0b0ce759239b3eabec4708d5a"} device-1 | {"level":"info","message":"GET /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01? 200 12ms","method":"GET","requestID":"b2868ef0b0ce759239b3eabec4708d5a","responseTime":12,"status":200,"url":"/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"2ac3a7b0-848f-11ef-8885-7d835fc08c91","responseTime":2,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/3db9b64e-771e-4919-9d0a-be2d3ad8b8fc?id=0677b6a6-4dcb-46d5-9213-f5e2050aae60","ws://localhost/rooms/3db9b64e-771e-4919-9d0a-be2d3ad8b8fc?id=2e49d3b3-4726-40f6-9e46-d394a9c55609"]},"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/3fa854b0-e52c-4c3a-a536-ad7c90426f2f"},{"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/e6cb1f10-6750-4560-8c2e-0df1d8294d01"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"6829a1499edd8d12c82be9a297323818"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2ac46b00-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.765834,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2ac46b00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2ac46b00-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"19e11535-d33f-4f03-9aea-62029035b8ff","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.4597387} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f5e442e5-0bd9-4a99-accd-6e959ae50aa5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.4599543} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2ac46b00-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2ac46b00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2ac46b00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473'","requestID":"2ac46b00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473'","requestID":"2ac46b00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2ac46b00-848f-11ef-9233-95baf63f17e0"} 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":"2ac46b00-848f-11ef-9233-95baf63f17e0","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":"2ac46b00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c336ed1c-e5a6-4456-9f92-dd7129c33473","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"2ac9c230-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"0677b6a6-4dcb-46d5-9213-f5e2050aae60\" in room \"http://localhost/rooms/3db9b64e-771e-4919-9d0a-be2d3ad8b8fc\"","requestID":"2ac9c230-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"2ac9c230-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"2ac9e940-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2e49d3b3-4726-40f6-9e46-d394a9c55609\" in room \"http://localhost/rooms/3db9b64e-771e-4919-9d0a-be2d3ad8b8fc\"","requestID":"2ac9e940-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"2ac9e940-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"69f02bd20457a7e7610f9918d2b828ff","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"69f02bd20457a7e7610f9918d2b828ff","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/3fa854b0-e52c-4c3a-a536-ad7c90426f2f"},{"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/e6cb1f10-6750-4560-8c2e-0df1d8294d01"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473"}}},"level":"info","message":"received a callback","requestID":"69f02bd20457a7e7610f9918d2b828ff"} device-1 | {"data":{"peerconnection":"c336ed1c-e5a6-4456-9f92-dd7129c33473","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"69f02bd20457a7e7610f9918d2b828ff","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"69f02bd20457a7e7610f9918d2b828ff"} device-1 | {"data":{"peerconnection":"c336ed1c-e5a6-4456-9f92-dd7129c33473","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"6829a1499edd8d12c82be9a297323818"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2acea430-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c336ed1c-e5a6-4456-9f92-dd7129c33473","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5e77b74a-75ab-43de-a090-ffd817e6e2c7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.5198276} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"28b63d4e1405a16582d113d509007bf7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:51800","level":"info","msg":"Sent response.","req_id":249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.370368,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"28b63d4e1405a16582d113d509007bf7","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2acea430-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2acea430-848f-11ef-9233-95baf63f17e0","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":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","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/3fa854b0-e52c-4c3a-a536-ad7c90426f2f"},{"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/e6cb1f10-6750-4560-8c2e-0df1d8294d01"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473"}}},"level":"info","message":"received a callback","requestID":"28b63d4e1405a16582d113d509007bf7"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"2ad051e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2acea430-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f/signaling 200 15ms","method":"POST","requestID":"2acea430-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc336ed1c-e5a6-4456-9f92-dd7129c33473","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4b801db-cf6b-4df1-9bb8-0acce98139b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.5311923} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.427445,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2ad051e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473","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":"2ad051e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2ad16350-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"2ad051e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473 200 11ms","method":"GET","requestID":"2ad051e0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f6c19fd-016b-438b-a8af-1fd7ad735aab","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.5382037} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.132056,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2ad16350-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","object_type":"device","rebac_allow":false,"scope_allow":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":"2ad16350-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2ad16350-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01/signaling 200 9ms","method":"POST","requestID":"2ad16350-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"28b63d4e1405a16582d113d509007bf7","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"28b63d4e1405a16582d113d509007bf7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2ad497a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c39f2435-7487-4b1f-b610-5dbbfc3dfd5b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.5586417} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.369486,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2ad497a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2ad497a0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2ad497a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f/signaling 200 9ms","method":"POST","requestID":"2ad497a0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2ad64550-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb48844a-516d-4d2d-bd79-9bc6c6b5858c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.5694385} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.083263,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2ad64550-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2ad64550-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2ad64550-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01/signaling 200 9ms","method":"POST","requestID":"2ad64550-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8","level":"info","message":"auth send jwt","requestID":"445b915db5277b25b92fabbe867b7d93"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"445b915db5277b25b92fabbe867b7d93","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628","requestID":"445b915db5277b25b92fabbe867b7d93"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.920372,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"445b915db5277b25b92fabbe867b7d93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"445b915db5277b25b92fabbe867b7d93","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628","requestID":"445b915db5277b25b92fabbe867b7d93"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628 HTTP/1.1","status": "200","body_bytes_sent":"889","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"445b915db5277b25b92fabbe867b7d93"} experiment-1 | {"level":"info","message":"GET /experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628 200 14ms","method":"GET","requestID":"445b915db5277b25b92fabbe867b7d93","responseTime":14,"status":200,"url":"/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8","level":"info","message":"auth send jwt","requestID":"e5526030cbf8d50ecf9d128cfce2b786"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e5526030cbf8d50ecf9d128cfce2b786","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628","requestID":"e5526030cbf8d50ecf9d128cfce2b786"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.912821,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e5526030cbf8d50ecf9d128cfce2b786","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e5526030cbf8d50ecf9d128cfce2b786","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Attempting to finish experiment","requestID":"e5526030cbf8d50ecf9d128cfce2b786"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"2adf9420-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.165456,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2adf9420-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2adf9420-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/3db9b64e-771e-4919-9d0a-be2d3ad8b8fc?id=0677b6a6-4dcb-46d5-9213-f5e2050aae60 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.157","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1e16cff74f973edd43eb070a973cab65"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/3db9b64e-771e-4919-9d0a-be2d3ad8b8fc?id=2e49d3b3-4726-40f6-9e46-d394a9c55609 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.157","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"60e38bc2cd96e3a14c994c9996f47bd9"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"0677b6a6-4dcb-46d5-9213-f5e2050aae60\" in room \"http://localhost/rooms/3db9b64e-771e-4919-9d0a-be2d3ad8b8fc\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"0677b6a6-4dcb-46d5-9213-f5e2050aae60\" from room \"http://localhost/rooms/3db9b64e-771e-4919-9d0a-be2d3ad8b8fc\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2e49d3b3-4726-40f6-9e46-d394a9c55609\" in room \"http://localhost/rooms/3db9b64e-771e-4919-9d0a-be2d3ad8b8fc\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2e49d3b3-4726-40f6-9e46-d394a9c55609\" from room \"http://localhost/rooms/3db9b64e-771e-4919-9d0a-be2d3ad8b8fc\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c336ed1c-e5a6-4456-9f92-dd7129c33473","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc336ed1c-e5a6-4456-9f92-dd7129c33473': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc336ed1c-e5a6-4456-9f92-dd7129c33473","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"103c1fb2-815b-460b-814e-da9bd96f9d28","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.6457477} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0a003795-e1f0-4b2b-b9ad-673fb476a5dd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.6461294} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7fa6f62af305a6e31a431fb20f2a0c85","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7fa6f62af305a6e31a431fb20f2a0c85","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"2adf9420-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"39ddfe0b5227f0842b2a92550b3df62e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"39ddfe0b5227f0842b2a92550b3df62e","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":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","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/3fa854b0-e52c-4c3a-a536-ad7c90426f2f"},{"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/e6cb1f10-6750-4560-8c2e-0df1d8294d01"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473"}}},"level":"info","message":"received a callback","requestID":"7fa6f62af305a6e31a431fb20f2a0c85"} 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/3fa854b0-e52c-4c3a-a536-ad7c90426f2f"},{"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/e6cb1f10-6750-4560-8c2e-0df1d8294d01"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473"}}},"level":"info","message":"received a callback","requestID":"39ddfe0b5227f0842b2a92550b3df62e"} device-1 | {"data":{"peerconnection":"c336ed1c-e5a6-4456-9f92-dd7129c33473","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"2adf9420-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473 204 43ms","method":"DELETE","requestID":"2adf9420-848f-11ef-9233-95baf63f17e0","responseTime":43,"status":204,"url":"/peerconnections/c336ed1c-e5a6-4456-9f92-dd7129c33473"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"},"level":"info","message":"Successfully finished experiment","requestID":"e5526030cbf8d50ecf9d128cfce2b786"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2ae9f460-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3fa854b0-e52c-4c3a-a536-ad7c90426f2f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"89ae8ec9-720e-4129-8fcd-91013cd25a36","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.7013469} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.859792,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2ae9f460-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f","object_type":"device","rebac_allow":false,"scope_allow":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":"2ae9f460-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2ae9f460-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f/signaling 200 14ms","method":"POST","requestID":"2ae9f460-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe8be9c4c-5aa5-46cb-b5f4-6f68731b6628': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe8be9c4c-5aa5-46cb-b5f4-6f68731b6628","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"48ed582e-ea19-4c58-a0b5-2da924521b21","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.709118} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5233ef30-a045-4ffc-906d-227fe30db397","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.7095106} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"e5526030cbf8d50ecf9d128cfce2b786","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2aec8c70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe6cb1f10-6750-4560-8c2e-0df1d8294d01","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db341064-31c2-4047-947f-5bb8daec24d3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293590.7164004} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.351718,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2aec8c70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01","object_type":"device","rebac_allow":false,"scope_allow":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":"2aec8c70-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2aec8c70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01/signaling 200 13ms","method":"POST","requestID":"2aec8c70-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/e6cb1f10-6750-4560-8c2e-0df1d8294d01/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628","requestID":"e5526030cbf8d50ecf9d128cfce2b786"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.312","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e5526030cbf8d50ecf9d128cfce2b786"} experiment-1 | {"level":"info","message":"DELETE /experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628 204 308ms","method":"DELETE","requestID":"e5526030cbf8d50ecf9d128cfce2b786","responseTime":308,"status":204,"url":"/experiments/e8be9c4c-5aa5-46cb-b5f4-6f68731b6628"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +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.745","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"3faf56c08fb6b3054605b15b00d95a2e"} gateway-1 | {"time_local":"07/Oct/2024:09:33:10 +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.758","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a181dd52d434058b3cb317524916254d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 276ms","method":"POST","requestID":"7fa6f62af305a6e31a431fb20f2a0c85","responseTime":276,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.280","http_referrer":"","http_user_agent":"node-fetch","requestID":"7fa6f62af305a6e31a431fb20f2a0c85"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 276ms","method":"POST","requestID":"39ddfe0b5227f0842b2a92550b3df62e","responseTime":276,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.281","http_referrer":"","http_user_agent":"node-fetch","requestID":"39ddfe0b5227f0842b2a92550b3df62e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8","level":"info","message":"auth send jwt","requestID":"680b36dd384741bc7d647ea9ec20f40c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"680b36dd384741bc7d647ea9ec20f40c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"680b36dd384741bc7d647ea9ec20f40c"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3fa854b0-e52c-4c3a-a536-ad7c90426f2f' closed"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.92606,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"680b36dd384741bc7d647ea9ec20f40c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293590,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MH0._XWb5YV4bPHiQKtmetsHmO1bVMhkizj2oS2eUqsJjn8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"680b36dd384741bc7d647ea9ec20f40c","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/e6cb1f10-6750-4560-8c2e-0df1d8294d01' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F259e6c7a-6651-4484-8996-0067b85723e7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"23ec6cf8-c539-4319-bf9e-21e933e65777","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.0497913} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"680b36dd384741bc7d647ea9ec20f40c","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da1f5c79-dedc-477e-b436-3d1bb9d5ac8e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.0591352} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"680b36dd384741bc7d647ea9ec20f40c","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F259e6c7a-6651-4484-8996-0067b85723e7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"715d210a-1786-46bc-a383-c1408766c757","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.1432269} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2357fb42-d982-4093-b21a-e7e5012add63","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.1433747} authorization-1 | {"level":"info","message":"POST /relations/update 200 87ms","method":"POST","requestID":"680b36dd384741bc7d647ea9ec20f40c","responseTime":87,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F259e6c7a-6651-4484-8996-0067b85723e7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F259e6c7a-6651-4484-8996-0067b85723e7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:11.143212358Z"}]},"request_id":"622f2294-2df0-41ed-9a63-4a112881d590","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.150164} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"680b36dd384741bc7d647ea9ec20f40c","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"680b36dd384741bc7d647ea9ec20f40c"} gateway-1 | {"time_local":"07/Oct/2024:09:33:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.232","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"680b36dd384741bc7d647ea9ec20f40c"} device-1 | {"level":"info","message":"POST /devices? 201 225ms","method":"POST","requestID":"680b36dd384741bc7d647ea9ec20f40c","responseTime":225,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110","level":"info","message":"auth send jwt","requestID":"e6736c794f1dea44042e6e1687a406d6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e6736c794f1dea44042e6e1687a406d6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e6736c794f1dea44042e6e1687a406d6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.234594,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e6736c794f1dea44042e6e1687a406d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293591,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e6736c794f1dea44042e6e1687a406d6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F225a7d0e-d0cb-45b2-9a42-000acad95ff7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2e775c58-0881-4c70-beb2-820a0b616a19","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.320522} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e6736c794f1dea44042e6e1687a406d6","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ddb74907-1a80-4773-b65c-934ec8c842e9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.3285587} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e6736c794f1dea44042e6e1687a406d6","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F225a7d0e-d0cb-45b2-9a42-000acad95ff7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"7bb44b5c-e8ac-4a97-9aaa-98f32c3a2a8c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.5114737} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"37326deb-91a3-404e-a227-8dfd0cbab71f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.5116925} authorization-1 | {"level":"info","message":"POST /relations/update 200 187ms","method":"POST","requestID":"e6736c794f1dea44042e6e1687a406d6","responseTime":187,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F225a7d0e-d0cb-45b2-9a42-000acad95ff7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F225a7d0e-d0cb-45b2-9a42-000acad95ff7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:11.511448776Z"}]},"request_id":"66cad2d1-48a7-431d-8628-bdbc417a8121","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.5193853} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e6736c794f1dea44042e6e1687a406d6","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e6736c794f1dea44042e6e1687a406d6"} gateway-1 | {"time_local":"07/Oct/2024:09:33:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.366","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e6736c794f1dea44042e6e1687a406d6"} device-1 | {"level":"info","message":"POST /devices? 201 359ms","method":"POST","requestID":"e6736c794f1dea44042e6e1687a406d6","responseTime":359,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110","level":"info","message":"auth send jwt","requestID":"e876f9f0eee24bebb4c925f14e0eb384"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e876f9f0eee24bebb4c925f14e0eb384","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e876f9f0eee24bebb4c925f14e0eb384"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.237603,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e876f9f0eee24bebb4c925f14e0eb384","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293591,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e876f9f0eee24bebb4c925f14e0eb384","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6eddedc-d26c-4c1b-a424-da22267bc859","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e011bf9f-6894-4eef-9a8b-880b57e28463","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.5556612} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e876f9f0eee24bebb4c925f14e0eb384","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"acdb7579-2208-46a6-8857-2d9b63a1d0c7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.56295} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e876f9f0eee24bebb4c925f14e0eb384","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6eddedc-d26c-4c1b-a424-da22267bc859","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"6b815d73-a6a4-46ce-b638-3bb80a9a1ebc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.5773125} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"40b008ac-26ac-45f4-872b-ed93ad245983","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.5774047} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"e876f9f0eee24bebb4c925f14e0eb384","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6eddedc-d26c-4c1b-a424-da22267bc859","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc6eddedc-d26c-4c1b-a424-da22267bc859","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:11.577271089Z"}]},"request_id":"566c718c-110f-4fe2-867c-ff0177874311","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.5894864} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e876f9f0eee24bebb4c925f14e0eb384","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e876f9f0eee24bebb4c925f14e0eb384"} gateway-1 | {"time_local":"07/Oct/2024:09:33:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.067","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e876f9f0eee24bebb4c925f14e0eb384"} device-1 | {"level":"info","message":"POST /devices? 201 60ms","method":"POST","requestID":"e876f9f0eee24bebb4c925f14e0eb384","responseTime":60,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110","level":"info","message":"auth send jwt","requestID":"ae3fd6233d33e0acdd7d8fa3d51aeba2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ae3fd6233d33e0acdd7d8fa3d51aeba2","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ae3fd6233d33e0acdd7d8fa3d51aeba2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.890712,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ae3fd6233d33e0acdd7d8fa3d51aeba2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293591,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ae3fd6233d33e0acdd7d8fa3d51aeba2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a07b9e-6fdd-4f69-9985-d03beba3eb15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cfc01bcd-3ad0-4224-9c53-276a801409cd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.6291049} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ae3fd6233d33e0acdd7d8fa3d51aeba2","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1f0bdccd-b753-4234-be20-4705bc2cb769","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.6356232} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"ae3fd6233d33e0acdd7d8fa3d51aeba2","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a07b9e-6fdd-4f69-9985-d03beba3eb15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"4fe603cc-db3d-49b7-b4c4-6f698d3c2c6f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.649227} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63e5fc98-d169-472c-bfc0-1bd53a956ba3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.6492639} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"ae3fd6233d33e0acdd7d8fa3d51aeba2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a07b9e-6fdd-4f69-9985-d03beba3eb15","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa7a07b9e-6fdd-4f69-9985-d03beba3eb15","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:11.649207169Z"}]},"request_id":"d2052580-f269-4fcc-8141-9bc479388a45","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.65455} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ae3fd6233d33e0acdd7d8fa3d51aeba2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ae3fd6233d33e0acdd7d8fa3d51aeba2"} gateway-1 | {"time_local":"07/Oct/2024:09:33:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae3fd6233d33e0acdd7d8fa3d51aeba2"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"ae3fd6233d33e0acdd7d8fa3d51aeba2","responseTime":58,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110","level":"info","message":"auth send jwt","requestID":"e09d2f740f62611bdb660e24bdd50b56"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e09d2f740f62611bdb660e24bdd50b56","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e09d2f740f62611bdb660e24bdd50b56"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.69046,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e09d2f740f62611bdb660e24bdd50b56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293591,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e09d2f740f62611bdb660e24bdd50b56","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc997e1-1e13-4159-887e-f3c3c5669335","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c641e33d-ad60-4ef3-88a0-060d1ece0ccf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.685197} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e09d2f740f62611bdb660e24bdd50b56","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"58a61344-d6a2-4b1b-ab07-d6a69b991a70","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.6913567} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e09d2f740f62611bdb660e24bdd50b56","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc997e1-1e13-4159-887e-f3c3c5669335","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"3f1fdd53-b9be-44ee-8291-ae83c5d393cc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.7009525} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4505da02-1868-41a4-9d18-c7da0fc8933f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.7016125} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e09d2f740f62611bdb660e24bdd50b56","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc997e1-1e13-4159-887e-f3c3c5669335","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9bc997e1-1e13-4159-887e-f3c3c5669335","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:11.700920629Z"}]},"request_id":"62ec8ed8-6c8c-49d8-a560-506ede059932","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.7072816} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e09d2f740f62611bdb660e24bdd50b56","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e09d2f740f62611bdb660e24bdd50b56"} gateway-1 | {"time_local":"07/Oct/2024:09:33:11 +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":"e09d2f740f62611bdb660e24bdd50b56"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"e09d2f740f62611bdb660e24bdd50b56","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110","level":"info","message":"auth send jwt","requestID":"e13e9f1877c410c2f8614bf9638b6eda"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e13e9f1877c410c2f8614bf9638b6eda","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e13e9f1877c410c2f8614bf9638b6eda"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.173877,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e13e9f1877c410c2f8614bf9638b6eda","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293591,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e13e9f1877c410c2f8614bf9638b6eda","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2e6a3bd-1d33-415e-93b4-3d048b43e363","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"894961b5-17c0-468b-9635-6f871e4ee91b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.7421696} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e13e9f1877c410c2f8614bf9638b6eda","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7c913942-b454-4d99-8a54-9028d06c8c5f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.7486463} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e13e9f1877c410c2f8614bf9638b6eda","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2e6a3bd-1d33-415e-93b4-3d048b43e363","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"0c421cf7-a217-4ec0-9d4f-05a9144235d5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.7628658} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8505292-239e-47a9-80c8-d971a65c5a82","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.763043} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"e13e9f1877c410c2f8614bf9638b6eda","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2e6a3bd-1d33-415e-93b4-3d048b43e363","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa2e6a3bd-1d33-415e-93b4-3d048b43e363","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:11.762839172Z"}]},"request_id":"cd02fe23-8e47-47c1-9fe5-dc3e6f4a012f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.7696836} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e13e9f1877c410c2f8614bf9638b6eda","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e13e9f1877c410c2f8614bf9638b6eda"} gateway-1 | {"time_local":"07/Oct/2024:09:33:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e13e9f1877c410c2f8614bf9638b6eda"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"e13e9f1877c410c2f8614bf9638b6eda","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110","level":"info","message":"auth send jwt","requestID":"4f53c6b75e6aaf0366a7f15aad696821"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4f53c6b75e6aaf0366a7f15aad696821","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4f53c6b75e6aaf0366a7f15aad696821"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.250738,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4f53c6b75e6aaf0366a7f15aad696821","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293591,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4f53c6b75e6aaf0366a7f15aad696821","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4707b5-59c2-48b8-a76f-e917ead3945b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0b021149-c8d2-42c2-bd5a-94ff566104af","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.8052888} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4f53c6b75e6aaf0366a7f15aad696821","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa798178-fa11-407d-abd7-41213c9e7af6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.8120286} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4f53c6b75e6aaf0366a7f15aad696821","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4707b5-59c2-48b8-a76f-e917ead3945b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"41fd838a-4c27-40ae-8637-c6a769cecd28","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.82576} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e81d93f-109d-4c62-86d5-355253ba48bb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.8258412} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"4f53c6b75e6aaf0366a7f15aad696821","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4707b5-59c2-48b8-a76f-e917ead3945b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e4707b5-59c2-48b8-a76f-e917ead3945b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:11.825734913Z"}]},"request_id":"6d25cace-a125-4037-9ce1-a3373c7c9e4a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.8328798} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4f53c6b75e6aaf0366a7f15aad696821","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4f53c6b75e6aaf0366a7f15aad696821"} gateway-1 | {"time_local":"07/Oct/2024:09:33:11 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"277","request_time":"0.062","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4f53c6b75e6aaf0366a7f15aad696821"} device-1 | {"level":"info","message":"POST /devices? 201 55ms","method":"POST","requestID":"4f53c6b75e6aaf0366a7f15aad696821","responseTime":55,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110","level":"info","message":"auth send jwt","requestID":"f2f167eeeeebf593f1ef25141fe2a50c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f2f167eeeeebf593f1ef25141fe2a50c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f2f167eeeeebf593f1ef25141fe2a50c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.948504,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f2f167eeeeebf593f1ef25141fe2a50c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293591,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f2f167eeeeebf593f1ef25141fe2a50c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16033735-5571-43c1-99ce-f193458cd8a4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"65c40a20-6040-42b8-84d2-a638aa9a878f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.8729632} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f2f167eeeeebf593f1ef25141fe2a50c","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c111cc46-c738-467b-bf36-f9b349663827","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.8806388} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f2f167eeeeebf593f1ef25141fe2a50c","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16033735-5571-43c1-99ce-f193458cd8a4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"c9ab1445-05c3-4382-92d0-62d1a80f471b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.8932273} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eb2113f7-c05e-4136-a80d-a1001dddaa85","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.8934028} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"f2f167eeeeebf593f1ef25141fe2a50c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16033735-5571-43c1-99ce-f193458cd8a4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F16033735-5571-43c1-99ce-f193458cd8a4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:11.893208389Z"}]},"request_id":"f47666ed-79fb-4455-8bd1-ad50b0a72a6d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.9004934} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f2f167eeeeebf593f1ef25141fe2a50c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f2f167eeeeebf593f1ef25141fe2a50c"} gateway-1 | {"time_local":"07/Oct/2024:09:33:11 +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":"f2f167eeeeebf593f1ef25141fe2a50c"} device-1 | {"level":"info","message":"POST /devices? 201 59ms","method":"POST","requestID":"f2f167eeeeebf593f1ef25141fe2a50c","responseTime":59,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110","level":"info","message":"auth send jwt","requestID":"9a1152da9ad89298a547d853738f5a90"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9a1152da9ad89298a547d853738f5a90","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9a1152da9ad89298a547d853738f5a90"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.295938,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9a1152da9ad89298a547d853738f5a90","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293591,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9a1152da9ad89298a547d853738f5a90","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54feaeb1-d9b7-4cb2-94cf-8a66f02cc2f6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2564fabb-16c7-4df8-93f4-3615021339ac","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.9343452} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"9a1152da9ad89298a547d853738f5a90","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"823dab0e-69ce-4355-8bc3-66d8cb21415c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.9423873} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"9a1152da9ad89298a547d853738f5a90","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54feaeb1-d9b7-4cb2-94cf-8a66f02cc2f6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"af4063c6-fa59-495e-b183-e40fa9ddea57","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.95349} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"db4bcbc3-2195-4960-82e6-763e65f141c3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.9537494} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"9a1152da9ad89298a547d853738f5a90","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54feaeb1-d9b7-4cb2-94cf-8a66f02cc2f6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F54feaeb1-d9b7-4cb2-94cf-8a66f02cc2f6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:11.953458146Z"}]},"request_id":"451f9850-127e-4efb-8e73-fbba878e413d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.9611137} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9a1152da9ad89298a547d853738f5a90","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9a1152da9ad89298a547d853738f5a90"} gateway-1 | {"time_local":"07/Oct/2024:09:33:11 +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":"9a1152da9ad89298a547d853738f5a90"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"9a1152da9ad89298a547d853738f5a90","responseTime":52,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110","level":"info","message":"auth send jwt","requestID":"9f4636a3e85865606e78b18e5e42b41c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9f4636a3e85865606e78b18e5e42b41c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9f4636a3e85865606e78b18e5e42b41c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.18356,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:11Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9f4636a3e85865606e78b18e5e42b41c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293591,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5MX0.64Iu0ld7fSga-uESOJW1jOn5aIbudn79DMwGqmLU110"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9f4636a3e85865606e78b18e5e42b41c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91341a07-aeee-4963-a67b-88a359742026","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6e069718-0354-4512-9ecd-23f0351b73aa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293591.9959362} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9f4636a3e85865606e78b18e5e42b41c","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"757a0367-b140-42d7-93f5-557211b67994","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.003683} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"9f4636a3e85865606e78b18e5e42b41c","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91341a07-aeee-4963-a67b-88a359742026","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"eed5d859-ab9b-463c-8535-fa59d45d7a96","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.021886} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"884fdbbe-bd57-4c36-8c7d-f8840d5fb6ae","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.022227} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"9f4636a3e85865606e78b18e5e42b41c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91341a07-aeee-4963-a67b-88a359742026","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F91341a07-aeee-4963-a67b-88a359742026","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.021862289Z"}]},"request_id":"d75599a9-8fc8-41e3-8f93-8d23a63929c9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.028709} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9f4636a3e85865606e78b18e5e42b41c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9f4636a3e85865606e78b18e5e42b41c"} device-1 | {"level":"info","message":"POST /devices? 201 60ms","method":"POST","requestID":"9f4636a3e85865606e78b18e5e42b41c","responseTime":60,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"278","request_time":"0.066","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9f4636a3e85865606e78b18e5e42b41c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4","level":"info","message":"auth send jwt","requestID":"f8d20302eb146c41ffdcf3b0523313a5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f8d20302eb146c41ffdcf3b0523313a5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"f8d20302eb146c41ffdcf3b0523313a5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.177582,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f8d20302eb146c41ffdcf3b0523313a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f8d20302eb146c41ffdcf3b0523313a5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8c1fb15-1053-4179-8a07-8915ddb05daa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"cda2a829-fd76-495a-aef2-f136714250ee","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.0662987} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f8d20302eb146c41ffdcf3b0523313a5","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"65344cef-c51e-4bff-8616-ace5a973bac5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.0743995} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"f8d20302eb146c41ffdcf3b0523313a5","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8c1fb15-1053-4179-8a07-8915ddb05daa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"3b1b85de-a570-44a5-8d36-c8acee7ea5c2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.0879421} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1ab4a645-21ad-4b2f-ad57-2eabd807d2fe","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.08808} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"f8d20302eb146c41ffdcf3b0523313a5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8c1fb15-1053-4179-8a07-8915ddb05daa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8c1fb15-1053-4179-8a07-8915ddb05daa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.087925286Z"}]},"request_id":"5b4296cd-33c3-408d-b061-d9cc2d66acdb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.0919247} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f8d20302eb146c41ffdcf3b0523313a5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"f8d20302eb146c41ffdcf3b0523313a5"} gateway-1 | {"time_local":"07/Oct/2024:09:33:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1069","request_time":"0.060","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f8d20302eb146c41ffdcf3b0523313a5"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"f8d20302eb146c41ffdcf3b0523313a5","responseTime":54,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4","level":"info","message":"auth send jwt","requestID":"6fe74e01d48b2afa0bea23dcacbb2403"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6fe74e01d48b2afa0bea23dcacbb2403","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6fe74e01d48b2afa0bea23dcacbb2403"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.143839,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6fe74e01d48b2afa0bea23dcacbb2403","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6fe74e01d48b2afa0bea23dcacbb2403","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f6f13432-63ee-4d1d-9b4f-7421639496d2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.128544} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6fe74e01d48b2afa0bea23dcacbb2403","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2f9f9460-b816-4ad4-8a45-d206933581a9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.1365328} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"6fe74e01d48b2afa0bea23dcacbb2403","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"8855f98a-9d52-4aa5-93e8-220f68732ad3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.1550276} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bf2ec023-5d92-47b6-8cf6-1b4f18dd07c0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.155567} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"6fe74e01d48b2afa0bea23dcacbb2403","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.154936462Z"}]},"request_id":"b7a10a8a-83a5-4467-b613-86c050b1bfad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.1647723} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"6fe74e01d48b2afa0bea23dcacbb2403","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6fe74e01d48b2afa0bea23dcacbb2403"} gateway-1 | {"time_local":"07/Oct/2024:09:33:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1347","request_time":"0.070","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6fe74e01d48b2afa0bea23dcacbb2403"} device-1 | {"level":"info","message":"POST /devices? 201 64ms","method":"POST","requestID":"6fe74e01d48b2afa0bea23dcacbb2403","responseTime":64,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4","level":"info","message":"auth send jwt","requestID":"ed75846e00c1b0e44e5bc38ae6f98aa6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ed75846e00c1b0e44e5bc38ae6f98aa6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ed75846e00c1b0e44e5bc38ae6f98aa6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.40404,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ed75846e00c1b0e44e5bc38ae6f98aa6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ed75846e00c1b0e44e5bc38ae6f98aa6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7090bb4b-f689-46cf-aa31-a502f083e853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e2f3990a-ab7f-4550-908e-111544b85838","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.2029698} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ed75846e00c1b0e44e5bc38ae6f98aa6","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5e91ab95-e963-4e87-9b3d-09e41577cf2e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.2110686} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"ed75846e00c1b0e44e5bc38ae6f98aa6","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7090bb4b-f689-46cf-aa31-a502f083e853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"2979b59d-5efc-45ab-90ec-27e55ef882a0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.2253773} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"98440446-7d8c-4759-99b7-2543e5d3efae","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.2259426} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"ed75846e00c1b0e44e5bc38ae6f98aa6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7090bb4b-f689-46cf-aa31-a502f083e853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7090bb4b-f689-46cf-aa31-a502f083e853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.225342491Z"}]},"request_id":"2c20ba8e-6209-40f0-a423-79889c71a611","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.233282} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ed75846e00c1b0e44e5bc38ae6f98aa6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ed75846e00c1b0e44e5bc38ae6f98aa6"} device-1 | {"level":"info","message":"POST /devices? 201 58ms","method":"POST","requestID":"ed75846e00c1b0e44e5bc38ae6f98aa6","responseTime":58,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"1070","request_time":"0.065","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ed75846e00c1b0e44e5bc38ae6f98aa6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4","level":"info","message":"auth send jwt","requestID":"332d67a4f8dcda2db83630ba41c47f9d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"332d67a4f8dcda2db83630ba41c47f9d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"332d67a4f8dcda2db83630ba41c47f9d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.159446,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8c1fb15-1053-4179-8a07-8915ddb05daa","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"332d67a4f8dcda2db83630ba41c47f9d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a8c1fb15-1053-4179-8a07-8915ddb05daa","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"332d67a4f8dcda2db83630ba41c47f9d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8c1fb15-1053-4179-8a07-8915ddb05daa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8c1fb15-1053-4179-8a07-8915ddb05daa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.087925286Z"}]},"request_id":"4b5d3a86-1101-4a09-ab09-2ec45d907d59","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.2647982} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"332d67a4f8dcda2db83630ba41c47f9d","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b9225c66-3d8a-48b0-adf1-d73a8119d951","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.2732708} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"332d67a4f8dcda2db83630ba41c47f9d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8c1fb15-1053-4179-8a07-8915ddb05daa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8c1fb15-1053-4179-8a07-8915ddb05daa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.087925286Z"}]},"request_id":"466d89c1-4635-43b0-9fb2-9139072fe93c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.2871866} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"332d67a4f8dcda2db83630ba41c47f9d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"332d67a4f8dcda2db83630ba41c47f9d"} gateway-1 | {"time_local":"07/Oct/2024:09:33:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a8c1fb15-1053-4179-8a07-8915ddb05daa? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"332d67a4f8dcda2db83630ba41c47f9d"} device-1 | {"level":"info","message":"PATCH /devices/a8c1fb15-1053-4179-8a07-8915ddb05daa? 200 43ms","method":"PATCH","requestID":"332d67a4f8dcda2db83630ba41c47f9d","responseTime":43,"status":200,"url":"/devices/a8c1fb15-1053-4179-8a07-8915ddb05daa?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4","level":"info","message":"auth send jwt","requestID":"a1eec5e634cdce90dc45a0afa84509b0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a1eec5e634cdce90dc45a0afa84509b0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a1eec5e634cdce90dc45a0afa84509b0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.138164,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a1eec5e634cdce90dc45a0afa84509b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a1eec5e634cdce90dc45a0afa84509b0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.154936462Z"}]},"request_id":"f7a4fe8e-1996-43da-91fc-b824351c19b8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.3148098} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a1eec5e634cdce90dc45a0afa84509b0","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b4e4bb98-a6e8-4a12-af25-18a12d11385f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.323059} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"a1eec5e634cdce90dc45a0afa84509b0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.154936462Z"}]},"request_id":"bd612d07-aee7-43ad-bc8c-af1b44d1a4ac","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.3350618} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a1eec5e634cdce90dc45a0afa84509b0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a1eec5e634cdce90dc45a0afa84509b0"} gateway-1 | {"time_local":"07/Oct/2024:09:33:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a1eec5e634cdce90dc45a0afa84509b0"} device-1 | {"level":"info","message":"PATCH /devices/788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c? 200 39ms","method":"PATCH","requestID":"a1eec5e634cdce90dc45a0afa84509b0","responseTime":40,"status":200,"url":"/devices/788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4","level":"info","message":"auth send jwt","requestID":"e59557451998a7a5b2caad685261c51e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e59557451998a7a5b2caad685261c51e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e59557451998a7a5b2caad685261c51e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.112261,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7090bb4b-f689-46cf-aa31-a502f083e853","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e59557451998a7a5b2caad685261c51e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7090bb4b-f689-46cf-aa31-a502f083e853","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e59557451998a7a5b2caad685261c51e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7090bb4b-f689-46cf-aa31-a502f083e853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7090bb4b-f689-46cf-aa31-a502f083e853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.225342491Z"}]},"request_id":"376c7c42-e0c8-4258-9c7a-09a1bef2d46e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.3628857} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e59557451998a7a5b2caad685261c51e","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"567dcfd8-7024-48ca-adff-5cd58733c2f2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.3705056} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e59557451998a7a5b2caad685261c51e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7090bb4b-f689-46cf-aa31-a502f083e853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7090bb4b-f689-46cf-aa31-a502f083e853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.225342491Z"}]},"request_id":"2fefb6af-153d-4e1f-a59d-a3486cae0e1b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.381143} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e59557451998a7a5b2caad685261c51e","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e59557451998a7a5b2caad685261c51e"} device-1 | {"level":"info","message":"PATCH /devices/7090bb4b-f689-46cf-aa31-a502f083e853? 200 38ms","method":"PATCH","requestID":"e59557451998a7a5b2caad685261c51e","responseTime":38,"status":200,"url":"/devices/7090bb4b-f689-46cf-aa31-a502f083e853?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7090bb4b-f689-46cf-aa31-a502f083e853? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e59557451998a7a5b2caad685261c51e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4","level":"info","message":"auth send jwt","requestID":"2d8bd6361c38d83929a406b6146e72e5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2d8bd6361c38d83929a406b6146e72e5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d8bd6361c38d83929a406b6146e72e5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.187637,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8c1fb15-1053-4179-8a07-8915ddb05daa","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d8bd6361c38d83929a406b6146e72e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a8c1fb15-1053-4179-8a07-8915ddb05daa","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2d8bd6361c38d83929a406b6146e72e5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8c1fb15-1053-4179-8a07-8915ddb05daa","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa8c1fb15-1053-4179-8a07-8915ddb05daa","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.087925286Z"}]},"request_id":"b39d3b82-493d-46ac-8730-7eb6daf1c6b4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.4071107} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2d8bd6361c38d83929a406b6146e72e5","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.223646,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.14723,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/259e6c7a-6651-4484-8996-0067b85723e7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d8bd6361c38d83929a406b6146e72e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/259e6c7a-6651-4484-8996-0067b85723e7","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"2d8bd6361c38d83929a406b6146e72e5","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/225a7d0e-d0cb-45b2-9a42-000acad95ff7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d8bd6361c38d83929a406b6146e72e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/225a7d0e-d0cb-45b2-9a42-000acad95ff7","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"2d8bd6361c38d83929a406b6146e72e5","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56506","level":"info","msg":"Received request.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:56512","level":"info","msg":"Received request.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:56506","level":"info","msg":"Sent response.","req_id":278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.386331,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c6eddedc-d26c-4c1b-a424-da22267bc859","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d8bd6361c38d83929a406b6146e72e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c6eddedc-d26c-4c1b-a424-da22267bc859","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"2d8bd6361c38d83929a406b6146e72e5","responseTime":14,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56512","level":"info","msg":"Sent response.","req_id":279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.661489,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d8bd6361c38d83929a406b6146e72e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 14ms","method":"POST","requestID":"2d8bd6361c38d83929a406b6146e72e5","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d8bd6361c38d83929a406b6146e72e5"} gateway-1 | {"time_local":"07/Oct/2024:09:33:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a8c1fb15-1053-4179-8a07-8915ddb05daa? HTTP/1.1","status": "200","body_bytes_sent":"1141","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2d8bd6361c38d83929a406b6146e72e5"} device-1 | {"level":"info","message":"GET /devices/a8c1fb15-1053-4179-8a07-8915ddb05daa? 200 44ms","method":"GET","requestID":"2d8bd6361c38d83929a406b6146e72e5","responseTime":44,"status":200,"url":"/devices/a8c1fb15-1053-4179-8a07-8915ddb05daa?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4","level":"info","message":"auth send jwt","requestID":"ee4cb9c083400a1283d878dfbcd6ec44"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"ee4cb9c083400a1283d878dfbcd6ec44","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee4cb9c083400a1283d878dfbcd6ec44"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.268427,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ee4cb9c083400a1283d878dfbcd6ec44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ee4cb9c083400a1283d878dfbcd6ec44","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.154936462Z"}]},"request_id":"c4b495af-fec4-40e1-a811-1a2769167f88","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.4616098} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ee4cb9c083400a1283d878dfbcd6ec44","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.833641,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.812379,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:56506","level":"info","msg":"Received request.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:56506","level":"info","msg":"Sent response.","req_id":283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.105344,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:56512","level":"info","msg":"Received request.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a7a07b9e-6fdd-4f69-9985-d03beba3eb15","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ee4cb9c083400a1283d878dfbcd6ec44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a7a07b9e-6fdd-4f69-9985-d03beba3eb15","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"ee4cb9c083400a1283d878dfbcd6ec44","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9bc997e1-1e13-4159-887e-f3c3c5669335","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ee4cb9c083400a1283d878dfbcd6ec44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9bc997e1-1e13-4159-887e-f3c3c5669335","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"ee4cb9c083400a1283d878dfbcd6ec44","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a2e6a3bd-1d33-415e-93b4-3d048b43e363","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ee4cb9c083400a1283d878dfbcd6ec44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a2e6a3bd-1d33-415e-93b4-3d048b43e363","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"ee4cb9c083400a1283d878dfbcd6ec44","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56512","level":"info","msg":"Sent response.","req_id":284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.762344,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e4707b5-59c2-48b8-a76f-e917ead3945b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ee4cb9c083400a1283d878dfbcd6ec44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3e4707b5-59c2-48b8-a76f-e917ead3945b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"ee4cb9c083400a1283d878dfbcd6ec44","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:56514","level":"info","msg":"Received request.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.740546,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7090bb4b-f689-46cf-aa31-a502f083e853","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ee4cb9c083400a1283d878dfbcd6ec44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7090bb4b-f689-46cf-aa31-a502f083e853","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ee4cb9c083400a1283d878dfbcd6ec44","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56514","level":"info","msg":"Sent response.","req_id":286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.639884,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8c1fb15-1053-4179-8a07-8915ddb05daa","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ee4cb9c083400a1283d878dfbcd6ec44","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a8c1fb15-1053-4179-8a07-8915ddb05daa","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"ee4cb9c083400a1283d878dfbcd6ec44","responseTime":12,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee4cb9c083400a1283d878dfbcd6ec44"} gateway-1 | {"time_local":"07/Oct/2024:09:33:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c? HTTP/1.1","status": "200","body_bytes_sent":"1491","request_time":"0.061","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ee4cb9c083400a1283d878dfbcd6ec44"} device-1 | {"level":"info","message":"GET /devices/788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c? 200 54ms","method":"GET","requestID":"ee4cb9c083400a1283d878dfbcd6ec44","responseTime":54,"status":200,"url":"/devices/788ae914-8ac0-4bdb-a3e8-6b562d6c7a9c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4","level":"info","message":"auth send jwt","requestID":"a5ece42e4c3a56b328edd340c4e0463e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a5ece42e4c3a56b328edd340c4e0463e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a5ece42e4c3a56b328edd340c4e0463e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.261217,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7090bb4b-f689-46cf-aa31-a502f083e853","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a5ece42e4c3a56b328edd340c4e0463e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7090bb4b-f689-46cf-aa31-a502f083e853","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a5ece42e4c3a56b328edd340c4e0463e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7090bb4b-f689-46cf-aa31-a502f083e853","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7090bb4b-f689-46cf-aa31-a502f083e853","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.225342491Z"}]},"request_id":"68d52897-fb83-47cd-af0e-e51ffde10bc9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.5227506} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a5ece42e4c3a56b328edd340c4e0463e","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.174711,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.397349,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:56506","level":"info","msg":"Received request.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:56506","level":"info","msg":"Sent response.","req_id":290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.899929,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/16033735-5571-43c1-99ce-f193458cd8a4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a5ece42e4c3a56b328edd340c4e0463e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/16033735-5571-43c1-99ce-f193458cd8a4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"a5ece42e4c3a56b328edd340c4e0463e","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/54feaeb1-d9b7-4cb2-94cf-8a66f02cc2f6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a5ece42e4c3a56b328edd340c4e0463e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/54feaeb1-d9b7-4cb2-94cf-8a66f02cc2f6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"a5ece42e4c3a56b328edd340c4e0463e","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/91341a07-aeee-4963-a67b-88a359742026","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a5ece42e4c3a56b328edd340c4e0463e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/91341a07-aeee-4963-a67b-88a359742026","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"a5ece42e4c3a56b328edd340c4e0463e","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56512","level":"info","msg":"Received request.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:56512","level":"info","msg":"Sent response.","req_id":291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.141786,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a8c1fb15-1053-4179-8a07-8915ddb05daa","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a5ece42e4c3a56b328edd340c4e0463e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a8c1fb15-1053-4179-8a07-8915ddb05daa","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"a5ece42e4c3a56b328edd340c4e0463e","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a5ece42e4c3a56b328edd340c4e0463e"} gateway-1 | {"time_local":"07/Oct/2024:09:33:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7090bb4b-f689-46cf-aa31-a502f083e853? HTTP/1.1","status": "200","body_bytes_sent":"1142","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a5ece42e4c3a56b328edd340c4e0463e"} device-1 | {"level":"info","message":"GET /devices/7090bb4b-f689-46cf-aa31-a502f083e853? 200 36ms","method":"GET","requestID":"a5ece42e4c3a56b328edd340c4e0463e","responseTime":36,"status":200,"url":"/devices/7090bb4b-f689-46cf-aa31-a502f083e853?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4","level":"info","message":"auth send jwt","requestID":"c6707575d574d277890720195e908afc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c6707575d574d277890720195e908afc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c6707575d574d277890720195e908afc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.161409,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c6707575d574d277890720195e908afc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c6707575d574d277890720195e908afc","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f017f7bc-164c-4cbb-a4c4-904e7dcff7a4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.5820312} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c6707575d574d277890720195e908afc","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e5c78e82-f595-4f03-a579-64e7017133d2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.589704} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"c6707575d574d277890720195e908afc","responseTime":6,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"e02ca84b-6947-491b-8823-36411eb36861","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.6028717} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6a2c365-9d7f-4627-af06-d0d97b883717","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.6028876} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"c6707575d574d277890720195e908afc","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.602846452Z"}]},"request_id":"98971b28-e9a7-41bb-b29d-60e63e8a9a79","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.612064} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c6707575d574d277890720195e908afc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c6707575d574d277890720195e908afc"} device-1 | {"level":"info","message":"POST /devices? 201 57ms","method":"POST","requestID":"c6707575d574d277890720195e908afc","responseTime":57,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"284","request_time":"0.064","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c6707575d574d277890720195e908afc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4","level":"info","message":"auth send jwt","requestID":"1cc3697cce0758b7301dba7fddf77ae1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1cc3697cce0758b7301dba7fddf77ae1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1cc3697cce0758b7301dba7fddf77ae1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.267866,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1cc3697cce0758b7301dba7fddf77ae1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"1cc3697cce0758b7301dba7fddf77ae1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9e8adfb-04c9-4730-808c-935a83bd476e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3d19ffe4-fbba-45ff-9f92-00309a961580","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.646204} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1cc3697cce0758b7301dba7fddf77ae1","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"23058fe4-2c28-4505-8a14-213eb215bb56","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.651465} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1cc3697cce0758b7301dba7fddf77ae1","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9e8adfb-04c9-4730-808c-935a83bd476e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"e1089e6b-6490-482f-af19-410f5e71e42f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.6611977} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7c2041b6-aaaf-4866-944f-c90991a6940a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.661283} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"1cc3697cce0758b7301dba7fddf77ae1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9e8adfb-04c9-4730-808c-935a83bd476e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9e8adfb-04c9-4730-808c-935a83bd476e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.661173991Z"}]},"request_id":"db32ab57-3cca-479e-b8c5-745dd7f9805b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.6667082} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1cc3697cce0758b7301dba7fddf77ae1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1cc3697cce0758b7301dba7fddf77ae1"} gateway-1 | {"time_local":"07/Oct/2024:09:33:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"706","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1cc3697cce0758b7301dba7fddf77ae1"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"1cc3697cce0758b7301dba7fddf77ae1","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4","level":"info","message":"auth send jwt","requestID":"b4238b4cfd498880f908fab91d624924"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b4238b4cfd498880f908fab91d624924","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b4238b4cfd498880f908fab91d624924"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.487406,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:12Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b4238b4cfd498880f908fab91d624924","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293592,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Mn0.OKEUdjDVXQFpUqTqR-YpaCCjq85XnnskL5vk2eFOlD4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b4238b4cfd498880f908fab91d624924","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"86852376-5c7a-4a61-8ec5-214589da9d89","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.7057128} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b4238b4cfd498880f908fab91d624924","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"49fd897e-d699-43a7-b270-5edbe43e806b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.7108152} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"b4238b4cfd498880f908fab91d624924","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"269469c6-dcbf-465e-8cd4-65e4324a0724","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.7216444} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"57631fb5-d183-4de2-bd0b-72e979b7f1c1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.7219138} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b4238b4cfd498880f908fab91d624924","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.721623420Z"}]},"request_id":"626c867a-cd11-4fc6-bf83-3c3b4ac6e9fc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293592.726411} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b4238b4cfd498880f908fab91d624924","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b4238b4cfd498880f908fab91d624924"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"b4238b4cfd498880f908fab91d624924","responseTime":51,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b4238b4cfd498880f908fab91d624924"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c4fb71ec1a33d9200564ba9df5820aa3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c4fb71ec1a33d9200564ba9df5820aa3","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ca1125e8173fe9fdc75ebfa84de5c298","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"07/Oct/2024:09:33:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/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":"c4fb71ec1a33d9200564ba9df5820aa3"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ca1125e8173fe9fdc75ebfa84de5c298","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/websocket 200 1ms","method":"OPTIONS","requestID":"c4fb71ec1a33d9200564ba9df5820aa3","responseTime":1,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:33:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4bd718c6-9106-4f90-a477-ac3e478f724a/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":"ca1125e8173fe9fdc75ebfa84de5c298"} device-1 | {"level":"info","message":"OPTIONS /devices/4bd718c6-9106-4f90-a477-ac3e478f724a/websocket 200 1ms","method":"OPTIONS","requestID":"ca1125e8173fe9fdc75ebfa84de5c298","responseTime":1,"status":200,"url":"/devices/4bd718c6-9106-4f90-a477-ac3e478f724a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8","level":"info","message":"auth send jwt","requestID":"e697839ded3408d14b5e1262207cd641"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"e697839ded3408d14b5e1262207cd641","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8","level":"info","message":"auth send jwt","requestID":"17eada333a064967ce46d88acf0bf5d6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e697839ded3408d14b5e1262207cd641"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"17eada333a064967ce46d88acf0bf5d6","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"17eada333a064967ce46d88acf0bf5d6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.233646,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e697839ded3408d14b5e1262207cd641","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"e697839ded3408d14b5e1262207cd641","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.795499,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"17eada333a064967ce46d88acf0bf5d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"17eada333a064967ce46d88acf0bf5d6","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"17eada333a064967ce46d88acf0bf5d6"} gateway-1 | {"time_local":"07/Oct/2024:09:33:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4bd718c6-9106-4f90-a477-ac3e478f724a/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":"17eada333a064967ce46d88acf0bf5d6"} device-1 | {"level":"info","message":"POST /devices/4bd718c6-9106-4f90-a477-ac3e478f724a/websocket 200 18ms","method":"POST","requestID":"17eada333a064967ce46d88acf0bf5d6","responseTime":18,"status":200,"url":"/devices/4bd718c6-9106-4f90-a477-ac3e478f724a/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e697839ded3408d14b5e1262207cd641"} gateway-1 | {"time_local":"07/Oct/2024:09:33:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","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":"e697839ded3408d14b5e1262207cd641"} device-1 | {"level":"info","message":"POST /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/websocket 200 31ms","method":"POST","requestID":"e697839ded3408d14b5e1262207cd641","responseTime":31,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e49594ea0abfddbb2196996c7cdf1428","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e49594ea0abfddbb2196996c7cdf1428","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4bd718c6-9106-4f90-a477-ac3e478f724a? 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":"e49594ea0abfddbb2196996c7cdf1428"} device-1 | {"level":"info","message":"OPTIONS /devices/4bd718c6-9106-4f90-a477-ac3e478f724a? 200 2ms","method":"OPTIONS","requestID":"e49594ea0abfddbb2196996c7cdf1428","responseTime":2,"status":200,"url":"/devices/4bd718c6-9106-4f90-a477-ac3e478f724a?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"13109cfbb179d95d3fbef462e323a5a1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"13109cfbb179d95d3fbef462e323a5a1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891? 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":"13109cfbb179d95d3fbef462e323a5a1"} device-1 | {"level":"info","message":"OPTIONS /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891? 200 1ms","method":"OPTIONS","requestID":"13109cfbb179d95d3fbef462e323a5a1","responseTime":1,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8","level":"info","message":"auth send jwt","requestID":"6d8c73948b4c1d52288b13e0e9c3e223"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"6d8c73948b4c1d52288b13e0e9c3e223","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6d8c73948b4c1d52288b13e0e9c3e223"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8","level":"info","message":"auth send jwt","requestID":"d3e3f88e53a2d2c15f406bdea9edf4e2"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d3e3f88e53a2d2c15f406bdea9edf4e2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.922246,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d3e3f88e53a2d2c15f406bdea9edf4e2","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d8c73948b4c1d52288b13e0e9c3e223","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d8c73948b4c1d52288b13e0e9c3e223","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.866262,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d3e3f88e53a2d2c15f406bdea9edf4e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d3e3f88e53a2d2c15f406bdea9edf4e2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.602846452Z"}]},"request_id":"58a2db5b-fa91-4235-b7dd-4f12854990d9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.7592418} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d8c73948b4c1d52288b13e0e9c3e223","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.721623420Z"}]},"request_id":"64c4c297-b765-4a07-9e0c-a7a7acf4b54d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.760533} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d3e3f88e53a2d2c15f406bdea9edf4e2","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1aca5c2e-2cd6-4e92-9578-ff4ef725a2c3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.7662385} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eac02c13-af6b-41c9-8790-d3901a417f01","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.7670264} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6d8c73948b4c1d52288b13e0e9c3e223","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"d3e3f88e53a2d2c15f406bdea9edf4e2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.721623420Z"}]},"request_id":"5adc25a9-795a-4cb1-8d0f-7e4533b62aec","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.7705398} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d3e3f88e53a2d2c15f406bdea9edf4e2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d3e3f88e53a2d2c15f406bdea9edf4e2"} device-1 | {"level":"info","message":"PATCH /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891? 200 24ms","method":"PATCH","requestID":"d3e3f88e53a2d2c15f406bdea9edf4e2","responseTime":24,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"d3e3f88e53a2d2c15f406bdea9edf4e2"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.602846452Z"}]},"request_id":"f9f6dcd7-0c4d-44fd-83ff-99a6f620595c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.7786667} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6d8c73948b4c1d52288b13e0e9c3e223","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6d8c73948b4c1d52288b13e0e9c3e223"} gateway-1 | {"time_local":"07/Oct/2024:09:33:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4bd718c6-9106-4f90-a477-ac3e478f724a? HTTP/1.1","status": "200","body_bytes_sent":"845","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":"6d8c73948b4c1d52288b13e0e9c3e223"} device-1 | {"level":"info","message":"PATCH /devices/4bd718c6-9106-4f90-a477-ac3e478f724a? 200 36ms","method":"PATCH","requestID":"6d8c73948b4c1d52288b13e0e9c3e223","responseTime":36,"status":200,"url":"/devices/4bd718c6-9106-4f90-a477-ac3e478f724a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8","level":"info","message":"auth send jwt","requestID":"1e264cdf26852a003fd940b45896410d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1e264cdf26852a003fd940b45896410d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1e264cdf26852a003fd940b45896410d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.882326,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e264cdf26852a003fd940b45896410d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1e264cdf26852a003fd940b45896410d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.721623420Z"}]},"request_id":"f0e60a5d-6593-4928-ab8d-a9e3b6b91b54","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.7989452} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1e264cdf26852a003fd940b45896410d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1e264cdf26852a003fd940b45896410d"} device-1 | {"level":"info","message":"GET /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891? 200 13ms","method":"GET","requestID":"1e264cdf26852a003fd940b45896410d","responseTime":13,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891? 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":"1e264cdf26852a003fd940b45896410d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8","level":"info","message":"auth send jwt","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7519c0fdd450a846b21f742cb9ac7fec","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.195009,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7519c0fdd450a846b21f742cb9ac7fec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7519c0fdd450a846b21f742cb9ac7fec","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Attempting to run experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Attempting to book experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Successfully booked experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d649150-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d64df70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.070567,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b9e8adfb-04c9-4730-808c-935a83bd476e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d649150-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b9e8adfb-04c9-4730-808c-935a83bd476e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2d649150-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.509774,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d64df70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2d64df70-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9e8adfb-04c9-4730-808c-935a83bd476e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb9e8adfb-04c9-4730-808c-935a83bd476e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.661173991Z"}]},"request_id":"b9822ccd-f40d-4b3c-ada6-611ced15d79b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.8634992} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2d649150-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.721623420Z"}]},"request_id":"af38454e-8fa8-4190-963c-00bf7b6d2e74","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.8647609} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2d64df70-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d64df70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891? 200 17ms","method":"GET","requestID":"2d64df70-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.236403,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d649150-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2d649150-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d649150-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b9e8adfb-04c9-4730-808c-935a83bd476e? 200 25ms","method":"GET","requestID":"2d649150-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/devices/b9e8adfb-04c9-4730-808c-935a83bd476e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Setting up experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Successfully set up experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d71d7c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d7225e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d729b10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.645743,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Successfully running experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d71d7c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2d71d7c0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.227948,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"client_addr":"127.0.0.1:56506","level":"info","msg":"Received request.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d7225e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"2d7225e0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56506","level":"info","msg":"Sent response.","req_id":306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.936213,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f622e1c5-1fc8-4252-b361-6cbee9e16ec2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.954629} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d729b10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","object_type":"device","rebac_allow":false,"scope_allow":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":"2d729b10-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.602846452Z"}]},"request_id":"f6f42427-7e33-4923-b7b4-0a1ebd5d902d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.9582098} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"2d71d7c0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d729b10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.721623420Z"}]},"request_id":"bdddbf59-769d-447f-8d0e-13df0b75b0f4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.9628236} device-1 | {"level":"info","message":"POST /devices/4bd718c6-9106-4f90-a477-ac3e478f724a/signaling 200 19ms","method":"POST","requestID":"2d729b10-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/4bd718c6-9106-4f90-a477-ac3e478f724a/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2d7225e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d764490-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d71d7c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/4bd718c6-9106-4f90-a477-ac3e478f724a? 200 33ms","method":"GET","requestID":"2d71d7c0-848f-11ef-9233-95baf63f17e0","responseTime":33,"status":200,"url":"/devices/4bd718c6-9106-4f90-a477-ac3e478f724a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d7225e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} device-1 | {"level":"info","message":"GET /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891? 200 33ms","method":"GET","requestID":"2d7225e0-848f-11ef-9233-95baf63f17e0","responseTime":33,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9dd58927-232b-4ec7-b4e1-10388ed9b7e5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.9753556} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F58f0d1d3-c300-49d3-8366-aa1b3b480f5b#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F58f0d1d3-c300-49d3-8366-aa1b3b480f5b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"69482aa8-a4c4-4d03-88d0-206e9c55a9f2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.9753451} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"68cbb5c3-2c52-4fb5-af14-bf58fce86c18","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.975987} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.956065,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d764490-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","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":"2d77a420-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"2d764490-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"7519c0fdd450a846b21f742cb9ac7fec","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d764490-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/signaling 200 14ms","method":"POST","requestID":"2d764490-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d7dcb00f-2021-4c0d-8589-fa4653aa9128","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.9843855} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.707072,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d77a420-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","object_type":"device","rebac_allow":false,"scope_allow":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":"2d77a420-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d77a420-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4bd718c6-9106-4f90-a477-ac3e478f724a/signaling 200 12ms","method":"POST","requestID":"2d77a420-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/4bd718c6-9106-4f90-a477-ac3e478f724a/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} gateway-1 | {"time_local":"07/Oct/2024:09:33:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.185","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} experiment-1 | {"level":"info","message":"POST /experiments? 201 180ms","method":"POST","requestID":"7519c0fdd450a846b21f742cb9ac7fec","responseTime":180,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d79ee10-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8","level":"info","message":"auth send jwt","requestID":"47e5ad8430809d0f787493170c40be0e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"47e5ad8430809d0f787493170c40be0e","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:14Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"47e5ad8430809d0f787493170c40be0e"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fe63cc1b-5380-46e1-b977-f3327eb7aa2b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293594.9998152} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.544701,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d79ee10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","object_type":"device","rebac_allow":false,"scope_allow":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":"2d79ee10-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.788595,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"47e5ad8430809d0f787493170c40be0e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"47e5ad8430809d0f787493170c40be0e","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d79ee10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/signaling 200 12ms","method":"POST","requestID":"2d79ee10-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.602846452Z"}]},"request_id":"9383abbc-7d0e-4bce-823c-dde67792e112","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.0058594} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"47e5ad8430809d0f787493170c40be0e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d7c3800-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2d7c5f10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"47e5ad8430809d0f787493170c40be0e"} gateway-1 | {"time_local":"07/Oct/2024:09:33:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4bd718c6-9106-4f90-a477-ac3e478f724a? HTTP/1.1","status": "200","body_bytes_sent":"845","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"47e5ad8430809d0f787493170c40be0e"} device-1 | {"level":"info","message":"GET /devices/4bd718c6-9106-4f90-a477-ac3e478f724a? 200 15ms","method":"GET","requestID":"47e5ad8430809d0f787493170c40be0e","responseTime":15,"status":200,"url":"/devices/4bd718c6-9106-4f90-a477-ac3e478f724a?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.808492,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d7c3800-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2d7c3800-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.755379,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d7c5f10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2d7c5f10-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NX0.uW3nDVpsLuXylYIm_dAOyS67cgn6WW1wkfY7umtwvpQ","level":"info","message":"auth send jwt","requestID":"637fa898d0a67b11ddf615222d3d2a67"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"637fa898d0a67b11ddf615222d3d2a67","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"637fa898d0a67b11ddf615222d3d2a67"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.602846452Z"}]},"request_id":"2ca20212-f687-4ba8-8430-13112fa6d83e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.0180647} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2d7c3800-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.721623420Z"}]},"request_id":"4c4bcad4-c388-4f0a-bfb8-cd469798cdb7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.0195072} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d7c3800-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"2d7c5f10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.639398,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} device-1 | {"level":"info","message":"GET /devices/4bd718c6-9106-4f90-a477-ac3e478f724a? 200 15ms","method":"GET","requestID":"2d7c3800-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/4bd718c6-9106-4f90-a477-ac3e478f724a?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"637fa898d0a67b11ddf615222d3d2a67","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293595,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NX0.uW3nDVpsLuXylYIm_dAOyS67cgn6WW1wkfY7umtwvpQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"637fa898d0a67b11ddf615222d3d2a67","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2d7c5f10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891? 200 18ms","method":"GET","requestID":"2d7c5f10-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:12.721623420Z"}]},"request_id":"054b4db9-36b8-4e0a-9f7f-d0e682a6c7e2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.0279171} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Building connection plan","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"ff65e568-5588-4ab0-8d8d-a0093ed51871"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"d7a34fd3-2941-42c1-9114-d56318dd2068"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"967673ac-4005-4187-8dbe-fc53a586412c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"637fa898d0a67b11ddf615222d3d2a67","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/4bd718c6-9106-4f90-a477-ac3e478f724a"},{"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/566980d3-5b5a-41c9-a3ec-80b4aeec7891"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2d7f9360-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.855772,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d7f9360-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293594,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NH0.AFr_Ck7lq1hY5Sxw49brsYgrit9gLIGC0_8FCrs6NS8"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2d7f9360-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"637fa898d0a67b11ddf615222d3d2a67"} gateway-1 | {"time_local":"07/Oct/2024:09:33:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891? 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":"637fa898d0a67b11ddf615222d3d2a67"} device-1 | {"level":"info","message":"GET /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891? 200 22ms","method":"GET","requestID":"637fa898d0a67b11ddf615222d3d2a67","responseTime":22,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"8336ff99-b4a5-43ce-9b5e-07a4d967a743","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.0479884} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5a30264-7f23-4e78-8227-790cdf6fe4af","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.048328} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"2d7f9360-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2d7f9360-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2d7f9360-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34'","requestID":"2d7f9360-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34'","requestID":"2d7f9360-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2d7f9360-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 41ms","method":"POST","requestID":"2d7f9360-848f-11ef-9233-95baf63f17e0","responseTime":41,"status":201,"url":"/peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} device-1 | {"level":"info","message":"deviceAHasVideo: false, deviceBHasVideo: false","requestID":"2d7f9360-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"7519c0fdd450a846b21f742cb9ac7fec"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d8a8fe0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"61c3d0b7-d822-43bc-837c-a4274fa270bb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.1065233} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.231175,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d8a8fe0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2d8a8fe0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d8a8fe0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4bd718c6-9106-4f90-a477-ac3e478f724a/signaling 200 9ms","method":"POST","requestID":"2d8a8fe0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/4bd718c6-9106-4f90-a477-ac3e478f724a/signaling"} device-1 | {"device":"566980d3-5b5a-41c9-a3ec-80b4aeec7891","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"566980d3-5b5a-41c9-a3ec-80b4aeec7891","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d8c8bb0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65ae5aa6-161a-4635-aa79-8eb25acd402f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.120015} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.842085,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d8c8bb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","object_type":"device","rebac_allow":false,"scope_allow":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":"2d8c8bb0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"4bd718c6-9106-4f90-a477-ac3e478f724a","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"4bd718c6-9106-4f90-a477-ac3e478f724a","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d8c8bb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/signaling 200 11ms","method":"POST","requestID":"2d8c8bb0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 8778625358033306247 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:LN/T\r\na=ice-pwd:p6EVIvqV3y2HxAW8a7DyQ7v0\r\na=ice-options:trickle\r\na=fingerprint:sha-256 87:A4:E8:E8:7E:D3:BD:93:E6:F4:81:C1:10:8E:D0:20:98:10:28:D8:6A:79:3C:3E:FE:B2:80:20:27:8F:BA:A5\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"566980d3-5b5a-41c9-a3ec-80b4aeec7891","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 3743118062502932855 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:ABpc\r\na=ice-pwd:VHgMNRTWFxkIOtqH++xjBi1h\r\na=ice-options:trickle\r\na=fingerprint:sha-256 49:C1:72:4B:5E:DC:38:07:EB:0A:17:EE:FD:E5:E3:CB:36:26:56:43:E9:B5:F6:C8:EB:62:EC:D4:4A:AC:B8:63\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"4bd718c6-9106-4f90-a477-ac3e478f724a","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:702376271 1 udp 2113937151 6d0118ca-54e5-49aa-b62a-317559cb6656.local 34630 typ host generation 0 ufrag ABpc network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4bd718c6-9106-4f90-a477-ac3e478f724a","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2918187824 1 udp 1677729535 141.24.211.56 34630 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag ABpc network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4bd718c6-9106-4f90-a477-ac3e478f724a","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/4bd718c6-9106-4f90-a477-ac3e478f724a'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a'"} device-1 | {"content":{"candidate":"candidate:2022550007 1 udp 2113937151 cb8449b5-fee0-43a8-ba19-31298b0cb4f1.local 50288 typ host generation 0 ufrag LN/T network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"566980d3-5b5a-41c9-a3ec-80b4aeec7891","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3953527012 1 udp 1677729535 141.24.211.56 50288 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag LN/T network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"566980d3-5b5a-41c9-a3ec-80b4aeec7891","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/566980d3-5b5a-41c9-a3ec-80b4aeec7891'"} device-1 | {"device":"566980d3-5b5a-41c9-a3ec-80b4aeec7891","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"4bd718c6-9106-4f90-a477-ac3e478f724a","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"4bd718c6-9106-4f90-a477-ac3e478f724a","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b6d5960b-e995-46cf-b935-60542efd4e34","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"566980d3-5b5a-41c9-a3ec-80b4aeec7891","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cc6dec6fddcdcdc4cfef3b06683102c9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cc6dec6fddcdcdc4cfef3b06683102c9","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/4bd718c6-9106-4f90-a477-ac3e478f724a"},{"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/566980d3-5b5a-41c9-a3ec-80b4aeec7891"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34"}}},"level":"info","message":"received a callback","requestID":"cc6dec6fddcdcdc4cfef3b06683102c9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"cc6dec6fddcdcdc4cfef3b06683102c9","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"cc6dec6fddcdcdc4cfef3b06683102c9"} device-1 | {"device":"566980d3-5b5a-41c9-a3ec-80b4aeec7891","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"4bd718c6-9106-4f90-a477-ac3e478f724a","deviceName":"Internal Test Device","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"4bd718c6-9106-4f90-a477-ac3e478f724a","deviceName":"Internal Test Device","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"b6d5960b-e995-46cf-b935-60542efd4e34","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"b6d5960b-e995-46cf-b935-60542efd4e34","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/b6d5960b-e995-46cf-b935-60542efd4e34' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b6d5960b-e995-46cf-b935-60542efd4e34","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4c246ec8f648ae49fe37f2f18f67de22","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4c246ec8f648ae49fe37f2f18f67de22","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/4bd718c6-9106-4f90-a477-ac3e478f724a"},{"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/566980d3-5b5a-41c9-a3ec-80b4aeec7891"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34"}}},"level":"info","message":"received a callback","requestID":"4c246ec8f648ae49fe37f2f18f67de22"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"2d9935e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb6d5960b-e995-46cf-b935-60542efd4e34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"48effba8-7505-4bc1-8744-14ca6bbe36fd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.2024317} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.156198,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d9935e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34","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":"2d9935e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"2d9935e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34 200 8ms","method":"GET","requestID":"2d9935e0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"4c246ec8f648ae49fe37f2f18f67de22","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"4c246ec8f648ae49fe37f2f18f67de22"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d9d7ba0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f21ef34-8128-4c26-ac8d-2d7b989380ed","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.231036} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.783342,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d9d7ba0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2d9d7ba0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d9d7ba0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4bd718c6-9106-4f90-a477-ac3e478f724a/signaling 200 9ms","method":"POST","requestID":"2d9d7ba0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/4bd718c6-9106-4f90-a477-ac3e478f724a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2d9f5060-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bb2dbec8-509f-4bca-ae6c-d70885d8e21a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.2433467} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.022356,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d9f5060-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","object_type":"device","rebac_allow":false,"scope_allow":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":"2d9f5060-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2d9f5060-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/signaling 200 9ms","method":"POST","requestID":"2d9f5060-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NX0.uW3nDVpsLuXylYIm_dAOyS67cgn6WW1wkfY7umtwvpQ","level":"info","message":"auth send jwt","requestID":"2e2577f6907caeae98f5b24925bcd808"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2e2577f6907caeae98f5b24925bcd808","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b","requestID":"2e2577f6907caeae98f5b24925bcd808"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.638902,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2e2577f6907caeae98f5b24925bcd808","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293595,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NX0.uW3nDVpsLuXylYIm_dAOyS67cgn6WW1wkfY7umtwvpQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2e2577f6907caeae98f5b24925bcd808","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b","requestID":"2e2577f6907caeae98f5b24925bcd808"} experiment-1 | {"level":"info","message":"GET /experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b 200 11ms","method":"GET","requestID":"2e2577f6907caeae98f5b24925bcd808","responseTime":11,"status":200,"url":"/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"} gateway-1 | {"time_local":"07/Oct/2024:09:33:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2e2577f6907caeae98f5b24925bcd808"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NX0.uW3nDVpsLuXylYIm_dAOyS67cgn6WW1wkfY7umtwvpQ","level":"info","message":"auth send jwt","requestID":"a0c86c51a98575022fe8b37b4c45bfd2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a0c86c51a98575022fe8b37b4c45bfd2","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b","requestID":"a0c86c51a98575022fe8b37b4c45bfd2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.204152,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a0c86c51a98575022fe8b37b4c45bfd2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293595,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NX0.uW3nDVpsLuXylYIm_dAOyS67cgn6WW1wkfY7umtwvpQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a0c86c51a98575022fe8b37b4c45bfd2","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Attempting to finish experiment","requestID":"a0c86c51a98575022fe8b37b4c45bfd2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"2da98990-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.159728,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2da98990-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293595,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NX0.uW3nDVpsLuXylYIm_dAOyS67cgn6WW1wkfY7umtwvpQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2da98990-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34","device":"566980d3-5b5a-41c9-a3ec-80b4aeec7891","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34","device":"4bd718c6-9106-4f90-a477-ac3e478f724a","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/b6d5960b-e995-46cf-b935-60542efd4e34' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b6d5960b-e995-46cf-b935-60542efd4e34","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"12c00de8df26086aee1500137f205c41","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"12c00de8df26086aee1500137f205c41","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6026e7c70debd3ea84aa4d3280927ec4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb6d5960b-e995-46cf-b935-60542efd4e34': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb6d5960b-e995-46cf-b935-60542efd4e34","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"e9d15bb6-3bbb-440a-bdad-95d31db6ad7d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.3256638} 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/4bd718c6-9106-4f90-a477-ac3e478f724a"},{"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/566980d3-5b5a-41c9-a3ec-80b4aeec7891"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34"}}},"level":"info","message":"received a callback","requestID":"12c00de8df26086aee1500137f205c41"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6026e7c70debd3ea84aa4d3280927ec4","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d8d991b0-656f-4fd4-bf1c-dc9ed0cc218f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.3261776} 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/4bd718c6-9106-4f90-a477-ac3e478f724a"},{"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/566980d3-5b5a-41c9-a3ec-80b4aeec7891"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34"}}},"level":"info","message":"received a callback","requestID":"6026e7c70debd3ea84aa4d3280927ec4"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"2da98990-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"b6d5960b-e995-46cf-b935-60542efd4e34","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"2da98990-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34 204 38ms","method":"DELETE","requestID":"2da98990-848f-11ef-9233-95baf63f17e0","responseTime":38,"status":204,"url":"/peerconnections/b6d5960b-e995-46cf-b935-60542efd4e34"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"},"level":"info","message":"Successfully finished experiment","requestID":"a0c86c51a98575022fe8b37b4c45bfd2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2db19fe0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4bd718c6-9106-4f90-a477-ac3e478f724a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0583b312-c5c2-4d35-af5c-df7b4d9d099e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.3647683} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.43624,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2db19fe0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a","object_type":"device","rebac_allow":false,"scope_allow":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":"2db19fe0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2db19fe0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4bd718c6-9106-4f90-a477-ac3e478f724a/signaling 200 13ms","method":"POST","requestID":"2db19fe0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/4bd718c6-9106-4f90-a477-ac3e478f724a/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F58f0d1d3-c300-49d3-8366-aa1b3b480f5b': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F58f0d1d3-c300-49d3-8366-aa1b3b480f5b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"0fabe009-3287-4926-909a-88bb7a8878ac","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.3735287} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1b2e2cae-f1ba-4185-9c4e-d48dd61824ad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.3738675} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2db3e9d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"a0c86c51a98575022fe8b37b4c45bfd2","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F566980d3-5b5a-41c9-a3ec-80b4aeec7891","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f2c51ef-7f2b-4f27-977f-78aa12244902","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.3788493} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.591657,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2db3e9d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2db3e9d0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2db3e9d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/signaling 200 12ms","method":"POST","requestID":"2db3e9d0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b","requestID":"a0c86c51a98575022fe8b37b4c45bfd2"} gateway-1 | {"time_local":"07/Oct/2024:09:33:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.150","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a0c86c51a98575022fe8b37b4c45bfd2"} experiment-1 | {"level":"info","message":"DELETE /experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b 204 146ms","method":"DELETE","requestID":"a0c86c51a98575022fe8b37b4c45bfd2","responseTime":146,"status":204,"url":"/experiments/58f0d1d3-c300-49d3-8366-aa1b3b480f5b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"12c00de8df26086aee1500137f205c41","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"12c00de8df26086aee1500137f205c41"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"6026e7c70debd3ea84aa4d3280927ec4","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"6026e7c70debd3ea84aa4d3280927ec4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NX0.uW3nDVpsLuXylYIm_dAOyS67cgn6WW1wkfY7umtwvpQ","level":"info","message":"auth send jwt","requestID":"395f77fcb19f0872cc533e67c9d1e6fd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"395f77fcb19f0872cc533e67c9d1e6fd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"395f77fcb19f0872cc533e67c9d1e6fd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.722806,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"395f77fcb19f0872cc533e67c9d1e6fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293595,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NX0.uW3nDVpsLuXylYIm_dAOyS67cgn6WW1wkfY7umtwvpQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"395f77fcb19f0872cc533e67c9d1e6fd","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:15 +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.740","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3081eae8c7e8e852d244557a43e1cc3a"} gateway-1 | {"time_local":"07/Oct/2024:09:33:15 +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.751","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"de3f71dbb025cf5e0ebf4fe5a7595928"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4bd718c6-9106-4f90-a477-ac3e478f724a' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/566980d3-5b5a-41c9-a3ec-80b4aeec7891' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"632e1cce-6cb2-4d80-b7af-504f97287cf9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.46782} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"395f77fcb19f0872cc533e67c9d1e6fd","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bb7aa984-a008-4d4d-b642-a0f8e686c7da","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.4725306} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"395f77fcb19f0872cc533e67c9d1e6fd","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"aba526da-f2df-431c-933e-485697264372","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.4841163} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3e8a7485-7e8e-4bb3-a7bc-60e8422cf6a5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.4846117} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"395f77fcb19f0872cc533e67c9d1e6fd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.484098280Z"}]},"request_id":"fb20ea8d-3887-4abe-a76f-dda220b8f2c6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.4890478} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"395f77fcb19f0872cc533e67c9d1e6fd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"395f77fcb19f0872cc533e67c9d1e6fd"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"395f77fcb19f0872cc533e67c9d1e6fd","responseTime":46,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"395f77fcb19f0872cc533e67c9d1e6fd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NX0.uW3nDVpsLuXylYIm_dAOyS67cgn6WW1wkfY7umtwvpQ","level":"info","message":"auth send jwt","requestID":"ee78f49db88fb85b77da65dec091d78f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ee78f49db88fb85b77da65dec091d78f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ee78f49db88fb85b77da65dec091d78f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.696847,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ee78f49db88fb85b77da65dec091d78f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293595,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5NX0.uW3nDVpsLuXylYIm_dAOyS67cgn6WW1wkfY7umtwvpQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ee78f49db88fb85b77da65dec091d78f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5c4c3810-905c-435f-b2f8-3523b6dfbf60","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.5136452} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ee78f49db88fb85b77da65dec091d78f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c86082d3-a1e9-4167-aa96-a794d18118eb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.5189996} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ee78f49db88fb85b77da65dec091d78f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"b6cfc308-70b3-4999-98a1-92e40a85b09f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.5348601} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44c332cb-1015-4b92-a0b0-437b7e89b96f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.534985} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"ee78f49db88fb85b77da65dec091d78f","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.534835974Z"}]},"request_id":"2074f964-5849-4616-bece-ee638fb6cee8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293595.543041} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ee78f49db88fb85b77da65dec091d78f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ee78f49db88fb85b77da65dec091d78f"} gateway-1 | {"time_local":"07/Oct/2024:09:33:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ee78f49db88fb85b77da65dec091d78f"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"ee78f49db88fb85b77da65dec091d78f","responseTime":49,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Nn0.WvyfiXn5l4ppVp6t2lpTLeXUjOe08cuzItTbMwLuj2g","level":"info","message":"auth send jwt","requestID":"45c438cf5948641bceb55435f0e48589"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"45c438cf5948641bceb55435f0e48589","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"45c438cf5948641bceb55435f0e48589"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.689329,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45c438cf5948641bceb55435f0e48589","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293596,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Nn0.WvyfiXn5l4ppVp6t2lpTLeXUjOe08cuzItTbMwLuj2g"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"45c438cf5948641bceb55435f0e48589","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.484098280Z"}]},"request_id":"82f5633b-4061-4fa1-acd8-97f8e8a10be0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293596.0331688} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"45c438cf5948641bceb55435f0e48589","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"70cf20e0-f15d-41de-a7b3-e64a8566779e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293596.0413747} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"45c438cf5948641bceb55435f0e48589","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.484098280Z"}]},"request_id":"13518fc6-4c41-49ef-91d7-4c4f65d219e6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293596.054846} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"45c438cf5948641bceb55435f0e48589","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"45c438cf5948641bceb55435f0e48589"} device-1 | {"level":"info","message":"PATCH /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6 200 40ms","method":"PATCH","requestID":"45c438cf5948641bceb55435f0e48589","responseTime":40,"status":200,"url":"/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6"} gateway-1 | {"time_local":"07/Oct/2024:09:33:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"45c438cf5948641bceb55435f0e48589"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Nn0.WvyfiXn5l4ppVp6t2lpTLeXUjOe08cuzItTbMwLuj2g","level":"info","message":"auth send jwt","requestID":"8e6ab274480512597e487dc3059e0d51"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8e6ab274480512597e487dc3059e0d51","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8e6ab274480512597e487dc3059e0d51"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.183589,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8e6ab274480512597e487dc3059e0d51","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293596,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5Nn0.WvyfiXn5l4ppVp6t2lpTLeXUjOe08cuzItTbMwLuj2g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8e6ab274480512597e487dc3059e0d51","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8e6ab274480512597e487dc3059e0d51"} gateway-1 | {"time_local":"07/Oct/2024:09:33:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6/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.9","requestID":"8e6ab274480512597e487dc3059e0d51"} device-1 | {"level":"info","message":"POST /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6/websocket 200 21ms","method":"POST","requestID":"8e6ab274480512597e487dc3059e0d51","responseTime":21,"status":200,"url":"/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c63548374c362041056478c280f1a41f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"c63548374c362041056478c280f1a41f","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3e2b9234-b446-4d29-8458-b1a634333ec9/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":"c63548374c362041056478c280f1a41f"} device-1 | {"level":"info","message":"OPTIONS /devices/3e2b9234-b446-4d29-8458-b1a634333ec9/websocket 200 1ms","method":"OPTIONS","requestID":"c63548374c362041056478c280f1a41f","responseTime":1,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o","level":"info","message":"auth send jwt","requestID":"0b44f77187ea627e92bf3d9298c11542"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0b44f77187ea627e92bf3d9298c11542","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0b44f77187ea627e92bf3d9298c11542"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.948272,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0b44f77187ea627e92bf3d9298c11542","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"0b44f77187ea627e92bf3d9298c11542","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0b44f77187ea627e92bf3d9298c11542"} gateway-1 | {"time_local":"07/Oct/2024:09:33:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3e2b9234-b446-4d29-8458-b1a634333ec9/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":"0b44f77187ea627e92bf3d9298c11542"} device-1 | {"level":"info","message":"POST /devices/3e2b9234-b446-4d29-8458-b1a634333ec9/websocket 200 25ms","method":"POST","requestID":"0b44f77187ea627e92bf3d9298c11542","responseTime":25,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0d4b00132f12cb66d79f70501ab30ef3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0d4b00132f12cb66d79f70501ab30ef3","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3e2b9234-b446-4d29-8458-b1a634333ec9? 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":"0d4b00132f12cb66d79f70501ab30ef3"} device-1 | {"level":"info","message":"OPTIONS /devices/3e2b9234-b446-4d29-8458-b1a634333ec9? 200 1ms","method":"OPTIONS","requestID":"0d4b00132f12cb66d79f70501ab30ef3","responseTime":1,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o","level":"info","message":"auth send jwt","requestID":"09419e1c889d27f1c2811c101350624f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"09419e1c889d27f1c2811c101350624f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"09419e1c889d27f1c2811c101350624f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.432368,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"09419e1c889d27f1c2811c101350624f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"09419e1c889d27f1c2811c101350624f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.534835974Z"}]},"request_id":"5f61d3d2-b287-4f6c-b831-1b434bf9a1db","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.6731238} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"09419e1c889d27f1c2811c101350624f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bdf2e686-289b-4750-969a-25f06c04b147","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.680457} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"09419e1c889d27f1c2811c101350624f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.534835974Z"}]},"request_id":"01e476d1-b98b-4d0b-8278-d4a49a7d2139","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.692529} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"09419e1c889d27f1c2811c101350624f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"09419e1c889d27f1c2811c101350624f"} gateway-1 | {"time_local":"07/Oct/2024:09:33:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3e2b9234-b446-4d29-8458-b1a634333ec9? 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":"09419e1c889d27f1c2811c101350624f"} device-1 | {"level":"info","message":"PATCH /devices/3e2b9234-b446-4d29-8458-b1a634333ec9? 200 38ms","method":"PATCH","requestID":"09419e1c889d27f1c2811c101350624f","responseTime":38,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o","level":"info","message":"auth send jwt","requestID":"9c1728140e77d96fed8e21149f1045e2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9c1728140e77d96fed8e21149f1045e2","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9c1728140e77d96fed8e21149f1045e2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.979243,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9c1728140e77d96fed8e21149f1045e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9c1728140e77d96fed8e21149f1045e2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.484098280Z"}]},"request_id":"5816f2e3-c3e2-4d9b-945f-28d7aa622460","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.7200656} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9c1728140e77d96fed8e21149f1045e2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9c1728140e77d96fed8e21149f1045e2"} gateway-1 | {"time_local":"07/Oct/2024:09:33:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6? 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":"9c1728140e77d96fed8e21149f1045e2"} device-1 | {"level":"info","message":"GET /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6? 200 25ms","method":"GET","requestID":"9c1728140e77d96fed8e21149f1045e2","responseTime":25,"status":200,"url":"/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o","level":"info","message":"auth send jwt","requestID":"a1b19b348ee6fecf8af2084d53c4fd58"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a1b19b348ee6fecf8af2084d53c4fd58","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a1b19b348ee6fecf8af2084d53c4fd58"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.176626,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a1b19b348ee6fecf8af2084d53c4fd58","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a1b19b348ee6fecf8af2084d53c4fd58","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.534835974Z"}]},"request_id":"864021cf-d9e8-4100-a579-92ea11bea288","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.7525978} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a1b19b348ee6fecf8af2084d53c4fd58","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a1b19b348ee6fecf8af2084d53c4fd58"} gateway-1 | {"time_local":"07/Oct/2024:09:33:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3e2b9234-b446-4d29-8458-b1a634333ec9? 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":"a1b19b348ee6fecf8af2084d53c4fd58"} device-1 | {"level":"info","message":"GET /devices/3e2b9234-b446-4d29-8458-b1a634333ec9? 200 18ms","method":"GET","requestID":"a1b19b348ee6fecf8af2084d53c4fd58","responseTime":19,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o","level":"info","message":"auth send jwt","requestID":"1e09a12391053f610dc80df682143aef"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1e09a12391053f610dc80df682143aef","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1e09a12391053f610dc80df682143aef"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.196124,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1e09a12391053f610dc80df682143aef","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"1e09a12391053f610dc80df682143aef","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Attempting to run experiment","requestID":"1e09a12391053f610dc80df682143aef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Attempting to book experiment","requestID":"1e09a12391053f610dc80df682143aef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Successfully booked experiment","requestID":"1e09a12391053f610dc80df682143aef"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f28af80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f28fda0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.62778,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f28af80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f28af80-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.649374,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f28fda0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2f28fda0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.484098280Z"}]},"request_id":"bf938021-8786-4108-bd6f-40f454feb035","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.8251948} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2f28af80-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.534835974Z"}]},"request_id":"09140835-0395-440e-a5e1-fc4b28238edc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.8262696} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2f28fda0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f28af80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6? 200 18ms","method":"GET","requestID":"2f28af80-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f28fda0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3e2b9234-b446-4d29-8458-b1a634333ec9? 200 17ms","method":"GET","requestID":"2f28fda0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Setting up experiment","requestID":"1e09a12391053f610dc80df682143aef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1e09a12391053f610dc80df682143aef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1e09a12391053f610dc80df682143aef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1e09a12391053f610dc80df682143aef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1e09a12391053f610dc80df682143aef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1e09a12391053f610dc80df682143aef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1e09a12391053f610dc80df682143aef"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Successfully set up experiment","requestID":"1e09a12391053f610dc80df682143aef"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f33d310-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f342130-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2f344840-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Successfully running experiment","requestID":"1e09a12391053f610dc80df682143aef"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.700291,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f33d310-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f33d310-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.611947,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f342130-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2f342130-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b9188d6-5841-47e5-a40f-b025e426c17a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.8981688} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.368878,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f344840-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","object_type":"device","rebac_allow":false,"scope_allow":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":"2f344840-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.484098280Z"}]},"request_id":"e950bedf-8f28-4344-ac77-4b3ec89d1295","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.8997915} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.534835974Z"}]},"request_id":"7a70b1ef-5d8a-4d48-80c0-f3bd05c27259","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.9008958} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2f33d310-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2f342130-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2f344840-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6/signaling 200 18ms","method":"POST","requestID":"2f344840-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f33d310-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6? 200 23ms","method":"GET","requestID":"2f33d310-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f342130-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3e2b9234-b446-4d29-8458-b1a634333ec9? 200 22ms","method":"GET","requestID":"2f342130-848f-11ef-9233-95baf63f17e0","responseTime":22,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fab3f4800-bb15-4881-ade4-89a50fb47256#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fab3f4800-bb15-4881-ade4-89a50fb47256","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"2a26aed3-3c56-4234-910e-369e211b8931","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.9134886} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ac4bc2ad-105e-4c1b-8496-a01e982e515b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.9138336} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2f37a3a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"1e09a12391053f610dc80df682143aef","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2f3818d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8bba3d42-beb8-486e-a927-cc8085955674","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.9204051} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.923941,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1e09a12391053f610dc80df682143aef"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f37a3a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","object_type":"device","rebac_allow":false,"scope_allow":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":"2f37a3a0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"812","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1e09a12391053f610dc80df682143aef"} experiment-1 | {"level":"info","message":"POST /experiments? 201 153ms","method":"POST","requestID":"1e09a12391053f610dc80df682143aef","responseTime":153,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"898ddeec-17fd-44d2-856d-cbb2cf2354c4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.9236317} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.094168,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f3818d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","object_type":"device","rebac_allow":false,"scope_allow":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":"2f3818d0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2f37a3a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3e2b9234-b446-4d29-8458-b1a634333ec9/signaling 200 12ms","method":"POST","requestID":"2f37a3a0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o","level":"info","message":"auth send jwt","requestID":"9484032d50465ccdde4656c0f8f094ea"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9484032d50465ccdde4656c0f8f094ea","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2f3818d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6/signaling 200 12ms","method":"POST","requestID":"2f3818d0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9484032d50465ccdde4656c0f8f094ea"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2f3a62c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.698118,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9484032d50465ccdde4656c0f8f094ea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9484032d50465ccdde4656c0f8f094ea","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf988728-41c8-4e84-a4d8-ef83899654d2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.9370873} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.943506,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f3a62c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","object_type":"device","rebac_allow":false,"scope_allow":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":"2f3a62c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.484098280Z"}]},"request_id":"2250846f-b9dd-44c1-8f75-20eba8e7a8b8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.9391358} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9484032d50465ccdde4656c0f8f094ea","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2f3a62c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3e2b9234-b446-4d29-8458-b1a634333ec9/signaling 200 11ms","method":"POST","requestID":"2f3a62c0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9484032d50465ccdde4656c0f8f094ea"} gateway-1 | {"time_local":"07/Oct/2024:09:33:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6? 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":"9484032d50465ccdde4656c0f8f094ea"} device-1 | {"level":"info","message":"GET /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6? 200 14ms","method":"GET","requestID":"9484032d50465ccdde4656c0f8f094ea","responseTime":14,"status":200,"url":"/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1e09a12391053f610dc80df682143aef"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f3c85a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2f3cacb0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o","level":"info","message":"auth send jwt","requestID":"8b4ca7bd36c66ddf6bddb12d4597ae74"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8b4ca7bd36c66ddf6bddb12d4597ae74","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.735342,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Received request.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8b4ca7bd36c66ddf6bddb12d4597ae74"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f3c85a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f3c85a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:59052","level":"info","msg":"Sent response.","req_id":344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.840848,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f3cacb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f3cacb0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.929942,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8b4ca7bd36c66ddf6bddb12d4597ae74","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8b4ca7bd36c66ddf6bddb12d4597ae74","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.484098280Z"}]},"request_id":"0c252e9d-eb2b-4839-91e6-4abd22317e10","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.9552248} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.534835974Z"}]},"request_id":"d930cda4-e4f9-40aa-bfb0-555fa2b524f1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.9561286} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2f3c85a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2f3cacb0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:15.534835974Z"}]},"request_id":"4e675c7f-b9c5-4d9e-894a-16d9a21c6d5f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.9600139} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8b4ca7bd36c66ddf6bddb12d4597ae74","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f3c85a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6? 200 16ms","method":"GET","requestID":"2f3c85a0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2f3cacb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3e2b9234-b446-4d29-8458-b1a634333ec9? 200 16ms","method":"GET","requestID":"2f3cacb0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8b4ca7bd36c66ddf6bddb12d4597ae74"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Building connection plan","requestID":"1e09a12391053f610dc80df682143aef"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"7e7761e0-5783-4d2c-9582-acb12aaa4821"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"aaa7a2bb-b307-4323-a80d-68c6af295b24"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"defea85e-3b27-43fd-8847-45dcf89c6055"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1e09a12391053f610dc80df682143aef"} device-1 | {"level":"info","message":"GET /devices/3e2b9234-b446-4d29-8458-b1a634333ec9? 200 14ms","method":"GET","requestID":"8b4ca7bd36c66ddf6bddb12d4597ae74","responseTime":14,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3e2b9234-b446-4d29-8458-b1a634333ec9? 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":"8b4ca7bd36c66ddf6bddb12d4597ae74"} 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/0cb98315-37b1-4e48-bf45-e1855f8cf1a6"},{"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/3e2b9234-b446-4d29-8458-b1a634333ec9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"1e09a12391053f610dc80df682143aef"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"2f3f92e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.64078,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f3f92e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293597,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzU5N30.Oa8JiXpmzeocjFWedxzZe4IbPcwbo3-UkjfLigNjE9o"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2f3f92e0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"da87234d-973b-451e-8476-61da3093f84e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.9773102} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5cbac751-b9ba-4b81-8023-96d88e9a5c1b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293597.9774194} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2f3f92e0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"2f3f92e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"2f3f92e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1'","requestID":"2f3f92e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1'","requestID":"2f3f92e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"2f3f92e0-848f-11ef-9233-95baf63f17e0"} 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":"2f3f92e0-848f-11ef-9233-95baf63f17e0","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":"2f3f92e0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1e09a12391053f610dc80df682143aef"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2f478220-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:18Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"446b9c46-ed34-49a4-9f9c-1d006d631d10","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293598.0230489} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.464622,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f478220-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","object_type":"device","rebac_allow":false,"scope_allow":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":"2f478220-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2f478220-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6/signaling 200 9ms","method":"POST","requestID":"2f478220-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"2f492fd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:18Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de81e154-1654-4605-83c6-0be5703fe056","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293598.0356836} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.620775,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f492fd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","object_type":"device","rebac_allow":false,"scope_allow":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":"2f492fd0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"3e2b9234-b446-4d29-8458-b1a634333ec9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"3e2b9234-b446-4d29-8458-b1a634333ec9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"2f492fd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3e2b9234-b446-4d29-8458-b1a634333ec9/signaling 200 11ms","method":"POST","requestID":"2f492fd0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 6864331173616584553 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:WSQh\r\na=ice-pwd:OB3Z2BWgvCDRrk9uz/y8tPHj\r\na=ice-options:trickle\r\na=fingerprint:sha-256 57:2D:17:DB:E5:8D:42:20:F8:5B:EA:51:7A:F9:FC:72:B3:92:0C:BA:F4:FE:7F:88:7D:DF:AC:2E:51:25:1C:B3\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"3e2b9234-b446-4d29-8458-b1a634333ec9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"3e2b9234-b446-4d29-8458-b1a634333ec9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"0cb98315-37b1-4e48-bf45-e1855f8cf1a6","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":"3a615e07-f4ab-41f1-bccd-a5028691e7e1","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0cb98315-37b1-4e48-bf45-e1855f8cf1a6","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":"0cb98315-37b1-4e48-bf45-e1855f8cf1a6","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":"0cb98315-37b1-4e48-bf45-e1855f8cf1a6","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":"0cb98315-37b1-4e48-bf45-e1855f8cf1a6","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/3a615e07-f4ab-41f1-bccd-a5028691e7e1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3a615e07-f4ab-41f1-bccd-a5028691e7e1","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0298f16f82c9b86a7481562c25fe3c5d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0298f16f82c9b86a7481562c25fe3c5d","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/0cb98315-37b1-4e48-bf45-e1855f8cf1a6"},{"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/3e2b9234-b446-4d29-8458-b1a634333ec9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1"}}},"level":"info","message":"received a callback","requestID":"0298f16f82c9b86a7481562c25fe3c5d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"0298f16f82c9b86a7481562c25fe3c5d","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"0298f16f82c9b86a7481562c25fe3c5d"} device-1 | {"content":{"candidate":"candidate:2895425659 1 udp 2113937151 36befeec-e0cc-47fd-8ba3-b77bb777c642.local 49118 typ host generation 0 ufrag WSQh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3e2b9234-b446-4d29-8458-b1a634333ec9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:683268612 1 udp 1677729535 141.24.211.56 49118 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag WSQh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3e2b9234-b446-4d29-8458-b1a634333ec9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2075420047 1 udp 33562623 141.24.210.113 57982 typ relay raddr 141.24.211.56 rport 49118 generation 0 ufrag WSQh network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3e2b9234-b446-4d29-8458-b1a634333ec9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"3e2b9234-b446-4d29-8458-b1a634333ec9","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/3e2b9234-b446-4d29-8458-b1a634333ec9'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9'"} device-1 | {"data":{"peerconnection":"3a615e07-f4ab-41f1-bccd-a5028691e7e1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"0cb98315-37b1-4e48-bf45-e1855f8cf1a6","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":"3e2b9234-b446-4d29-8458-b1a634333ec9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"0cb98315-37b1-4e48-bf45-e1855f8cf1a6","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":"3a615e07-f4ab-41f1-bccd-a5028691e7e1","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/3a615e07-f4ab-41f1-bccd-a5028691e7e1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3a615e07-f4ab-41f1-bccd-a5028691e7e1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"467a7a0e265baf4ab921a516ebd4a59d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"467a7a0e265baf4ab921a516ebd4a59d","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/0cb98315-37b1-4e48-bf45-e1855f8cf1a6"},{"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/3e2b9234-b446-4d29-8458-b1a634333ec9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1"}}},"level":"info","message":"received a callback","requestID":"467a7a0e265baf4ab921a516ebd4a59d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"30888da0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3a615e07-f4ab-41f1-bccd-a5028691e7e1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60be5c89-5a0d-4660-9aa8-5aa1ee640d3c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.1280186} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.921039,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"30888da0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1","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":"30888da0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"30888da0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1 200 11ms","method":"GET","requestID":"30888da0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"467a7a0e265baf4ab921a516ebd4a59d","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"467a7a0e265baf4ab921a516ebd4a59d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"308c8540-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"68a6d26a-31a4-4a9e-87b2-1424dbbed8be","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.1542583} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.140346,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"308c8540-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","object_type":"device","rebac_allow":false,"scope_allow":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":"308c8540-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"308c8540-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6/signaling 200 10ms","method":"POST","requestID":"308c8540-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"308e5a00-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f95fd4eb-1964-4418-ac2b-086f2e562910","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.164021} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.326063,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"308e5a00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","object_type":"device","rebac_allow":false,"scope_allow":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":"308e5a00-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"308e5a00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3e2b9234-b446-4d29-8458-b1a634333ec9/signaling 200 8ms","method":"POST","requestID":"308e5a00-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMH0.qXLfuI0rAZgtupZjt2S64lOB11Iw6D-Vxy39tPPNFPE","level":"info","message":"auth send jwt","requestID":"8513fe3819366068d231f7be6b82f60e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8513fe3819366068d231f7be6b82f60e","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/ab3f4800-bb15-4881-ade4-89a50fb47256","requestID":"8513fe3819366068d231f7be6b82f60e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.928491,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8513fe3819366068d231f7be6b82f60e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293600,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMH0.qXLfuI0rAZgtupZjt2S64lOB11Iw6D-Vxy39tPPNFPE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8513fe3819366068d231f7be6b82f60e","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/ab3f4800-bb15-4881-ade4-89a50fb47256","requestID":"8513fe3819366068d231f7be6b82f60e"} gateway-1 | {"time_local":"07/Oct/2024:09:33:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/ab3f4800-bb15-4881-ade4-89a50fb47256 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":"8513fe3819366068d231f7be6b82f60e"} experiment-1 | {"level":"info","message":"GET /experiments/ab3f4800-bb15-4881-ade4-89a50fb47256 200 17ms","method":"GET","requestID":"8513fe3819366068d231f7be6b82f60e","responseTime":17,"status":200,"url":"/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMH0.qXLfuI0rAZgtupZjt2S64lOB11Iw6D-Vxy39tPPNFPE","level":"info","message":"auth send jwt","requestID":"08a4f7a7f5d3b5836bf4ff2e4ac7cee0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"08a4f7a7f5d3b5836bf4ff2e4ac7cee0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/ab3f4800-bb15-4881-ade4-89a50fb47256","requestID":"08a4f7a7f5d3b5836bf4ff2e4ac7cee0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.233275,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"08a4f7a7f5d3b5836bf4ff2e4ac7cee0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293600,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMH0.qXLfuI0rAZgtupZjt2S64lOB11Iw6D-Vxy39tPPNFPE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"08a4f7a7f5d3b5836bf4ff2e4ac7cee0","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Attempting to finish experiment","requestID":"08a4f7a7f5d3b5836bf4ff2e4ac7cee0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"30a6c400-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.230456,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"30a6c400-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293600,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMH0.qXLfuI0rAZgtupZjt2S64lOB11Iw6D-Vxy39tPPNFPE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"30a6c400-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1","device":"3e2b9234-b446-4d29-8458-b1a634333ec9","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"0cb98315-37b1-4e48-bf45-e1855f8cf1a6","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":"0cb98315-37b1-4e48-bf45-e1855f8cf1a6","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":"0cb98315-37b1-4e48-bf45-e1855f8cf1a6","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/3a615e07-f4ab-41f1-bccd-a5028691e7e1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3a615e07-f4ab-41f1-bccd-a5028691e7e1","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3a615e07-f4ab-41f1-bccd-a5028691e7e1': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3a615e07-f4ab-41f1-bccd-a5028691e7e1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"62c654e9-3ec5-4c95-916a-5d81fa65f210","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.3491182} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7b908206-3db4-4966-86b0-c4123b3ac135","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.3497481} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6ab052461f793091a8c65991e1711905","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 14ms","method":"POST","requestID":"30a6c400-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6ab052461f793091a8c65991e1711905","responseTime":3,"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/0cb98315-37b1-4e48-bf45-e1855f8cf1a6"},{"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/3e2b9234-b446-4d29-8458-b1a634333ec9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1"}}},"level":"info","message":"received a callback","requestID":"6ab052461f793091a8c65991e1711905"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dd1cbf0a685970ba0b54ac4fd399ffdc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"dd1cbf0a685970ba0b54ac4fd399ffdc","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6"},{"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/3e2b9234-b446-4d29-8458-b1a634333ec9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1"}}},"level":"info","message":"received a callback","requestID":"dd1cbf0a685970ba0b54ac4fd399ffdc"} device-1 | {"data":{"peerconnection":"3a615e07-f4ab-41f1-bccd-a5028691e7e1","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"30a6c400-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1 204 56ms","method":"DELETE","requestID":"30a6c400-848f-11ef-9233-95baf63f17e0","responseTime":56,"status":204,"url":"/peerconnections/3a615e07-f4ab-41f1-bccd-a5028691e7e1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"},"level":"info","message":"Successfully finished experiment","requestID":"08a4f7a7f5d3b5836bf4ff2e4ac7cee0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"30b34720-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0cb98315-37b1-4e48-bf45-e1855f8cf1a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a39143f2-e3fb-4fb0-b5b2-3ca89e7a99fb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.4095592} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.196335,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"30b34720-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6","object_type":"device","rebac_allow":false,"scope_allow":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":"30b34720-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"30b34720-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fab3f4800-bb15-4881-ade4-89a50fb47256': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fab3f4800-bb15-4881-ade4-89a50fb47256","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"e5bf5261-7972-45ef-8789-a63ce4dc1b32","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.4169784} device-1 | {"level":"info","message":"POST /devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6/signaling 200 15ms","method":"POST","requestID":"30b34720-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/0cb98315-37b1-4e48-bf45-e1855f8cf1a6/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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b252826-4caf-458d-9d88-8452ccbefdf7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.4177485} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"08a4f7a7f5d3b5836bf4ff2e4ac7cee0","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"30b62d50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3e2b9234-b446-4d29-8458-b1a634333ec9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a4eed5bd-419d-4cf7-bd23-fd5ddcfdfeb8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.4287324} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.56543,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"30b62d50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3e2b9234-b446-4d29-8458-b1a634333ec9","object_type":"device","rebac_allow":false,"scope_allow":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":"30b62d50-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"30b62d50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3e2b9234-b446-4d29-8458-b1a634333ec9/signaling 200 15ms","method":"POST","requestID":"30b62d50-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/3e2b9234-b446-4d29-8458-b1a634333ec9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/ab3f4800-bb15-4881-ade4-89a50fb47256","requestID":"08a4f7a7f5d3b5836bf4ff2e4ac7cee0"} gateway-1 | {"time_local":"07/Oct/2024:09:33:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/ab3f4800-bb15-4881-ade4-89a50fb47256 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.193","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"08a4f7a7f5d3b5836bf4ff2e4ac7cee0"} experiment-1 | {"level":"info","message":"DELETE /experiments/ab3f4800-bb15-4881-ade4-89a50fb47256 204 188ms","method":"DELETE","requestID":"08a4f7a7f5d3b5836bf4ff2e4ac7cee0","responseTime":188,"status":204,"url":"/experiments/ab3f4800-bb15-4881-ade4-89a50fb47256"} gateway-1 | {"time_local":"07/Oct/2024:09:33:20 +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.403","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d601179d9121052a23c4dc2a55046519"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 139ms","method":"POST","requestID":"6ab052461f793091a8c65991e1711905","responseTime":139,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"6ab052461f793091a8c65991e1711905"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"dd1cbf0a685970ba0b54ac4fd399ffdc","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch","requestID":"dd1cbf0a685970ba0b54ac4fd399ffdc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMH0.qXLfuI0rAZgtupZjt2S64lOB11Iw6D-Vxy39tPPNFPE","level":"info","message":"auth send jwt","requestID":"cd9710b794f25eb1ce04acc5c56962fa"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cd9710b794f25eb1ce04acc5c56962fa","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cd9710b794f25eb1ce04acc5c56962fa"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:20Z"} gateway-1 | {"time_local":"07/Oct/2024:09:33:20 +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.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":"4c7ba7c0eba7e0a433e0086bfd675776"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.112675,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"cd9710b794f25eb1ce04acc5c56962fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293600,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMH0.qXLfuI0rAZgtupZjt2S64lOB11Iw6D-Vxy39tPPNFPE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cd9710b794f25eb1ce04acc5c56962fa","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/0cb98315-37b1-4e48-bf45-e1855f8cf1a6' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"19d0a23d-a671-4446-8f89-468e477e5d72","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.5232747} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cd9710b794f25eb1ce04acc5c56962fa","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/3e2b9234-b446-4d29-8458-b1a634333ec9' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a7e0341-8011-4022-b64f-694e6886111c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.5286713} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cd9710b794f25eb1ce04acc5c56962fa","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"add4980e-8502-41c1-b1ba-ac174eddc342","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.5435598} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64be69b7-30a2-456a-9dd1-402d339c00e7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.5436552} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"cd9710b794f25eb1ce04acc5c56962fa","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.543531974Z"}]},"request_id":"b55b4fec-4bac-4e77-a453-a07e68e5277b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.5482643} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cd9710b794f25eb1ce04acc5c56962fa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cd9710b794f25eb1ce04acc5c56962fa"} gateway-1 | {"time_local":"07/Oct/2024:09:33:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"cd9710b794f25eb1ce04acc5c56962fa"} device-1 | {"level":"info","message":"POST /devices? 201 51ms","method":"POST","requestID":"cd9710b794f25eb1ce04acc5c56962fa","responseTime":51,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMH0.qXLfuI0rAZgtupZjt2S64lOB11Iw6D-Vxy39tPPNFPE","level":"info","message":"auth send jwt","requestID":"95fe7813c8eaf77292e105865504ec3d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"95fe7813c8eaf77292e105865504ec3d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"95fe7813c8eaf77292e105865504ec3d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.759341,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:20Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"95fe7813c8eaf77292e105865504ec3d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293600,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMH0.qXLfuI0rAZgtupZjt2S64lOB11Iw6D-Vxy39tPPNFPE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"95fe7813c8eaf77292e105865504ec3d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"aa38ee21-8e95-4a49-8f0b-cb974e3e4bc8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.5723262} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"95fe7813c8eaf77292e105865504ec3d","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ca185846-8c1b-4c4e-b214-8325c9063440","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.5780313} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"95fe7813c8eaf77292e105865504ec3d","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"5cd9c28a-4064-4812-8274-40b9c1900bd5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.5878265} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"87a7aa58-f034-4fb2-b410-186c53d15f68","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.5879438} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"95fe7813c8eaf77292e105865504ec3d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.587794441Z"}]},"request_id":"d4d4c772-aa71-4d8a-8190-e69cab786461","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293600.5923452} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"95fe7813c8eaf77292e105865504ec3d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"95fe7813c8eaf77292e105865504ec3d"} gateway-1 | {"time_local":"07/Oct/2024:09:33:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"95fe7813c8eaf77292e105865504ec3d"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"95fe7813c8eaf77292e105865504ec3d","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"938fca3f83e2cea90355bc29e73904c2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"938fca3f83e2cea90355bc29e73904c2","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/916a471d-fe27-48a3-befa-2000285deb4f/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":"938fca3f83e2cea90355bc29e73904c2"} device-1 | {"level":"info","message":"OPTIONS /devices/916a471d-fe27-48a3-befa-2000285deb4f/websocket 200 1ms","method":"OPTIONS","requestID":"938fca3f83e2cea90355bc29e73904c2","responseTime":1,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE","level":"info","message":"auth send jwt","requestID":"b432b7dd1a69972f2fe03ee982164526"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b432b7dd1a69972f2fe03ee982164526","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b432b7dd1a69972f2fe03ee982164526"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"62e717e548ac46dc4f6e0d1d67fe9ad3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"62e717e548ac46dc4f6e0d1d67fe9ad3","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/websocket HTTP/1.1","status": "200","body_bytes_sent":"4","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":"62e717e548ac46dc4f6e0d1d67fe9ad3"} device-1 | {"level":"info","message":"OPTIONS /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/websocket 200 1ms","method":"OPTIONS","requestID":"62e717e548ac46dc4f6e0d1d67fe9ad3","responseTime":1,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/websocket"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.330058,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b432b7dd1a69972f2fe03ee982164526","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"b432b7dd1a69972f2fe03ee982164526","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE","level":"info","message":"auth send jwt","requestID":"3dd3ebe729e28628c210ef3ccaa9d5ec"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3dd3ebe729e28628c210ef3ccaa9d5ec","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3dd3ebe729e28628c210ef3ccaa9d5ec"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.355031,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3dd3ebe729e28628c210ef3ccaa9d5ec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3dd3ebe729e28628c210ef3ccaa9d5ec","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b432b7dd1a69972f2fe03ee982164526"} gateway-1 | {"time_local":"07/Oct/2024:09:33:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/916a471d-fe27-48a3-befa-2000285deb4f/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":"b432b7dd1a69972f2fe03ee982164526"} device-1 | {"level":"info","message":"POST /devices/916a471d-fe27-48a3-befa-2000285deb4f/websocket 200 33ms","method":"POST","requestID":"b432b7dd1a69972f2fe03ee982164526","responseTime":33,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3dd3ebe729e28628c210ef3ccaa9d5ec"} device-1 | {"level":"info","message":"POST /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/websocket 200 29ms","method":"POST","requestID":"3dd3ebe729e28628c210ef3ccaa9d5ec","responseTime":29,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:33:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","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":"3dd3ebe729e28628c210ef3ccaa9d5ec"} device-1 | {"level":"info","message":"device 'http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"11c04558aacce194a4e1fb353fb1eef2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"11c04558aacce194a4e1fb353fb1eef2","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/916a471d-fe27-48a3-befa-2000285deb4f? 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":"11c04558aacce194a4e1fb353fb1eef2"} device-1 | {"level":"info","message":"OPTIONS /devices/916a471d-fe27-48a3-befa-2000285deb4f? 200 1ms","method":"OPTIONS","requestID":"11c04558aacce194a4e1fb353fb1eef2","responseTime":1,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE","level":"info","message":"auth send jwt","requestID":"16bf1d19f8728ae2b8353d4689886151"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"16bf1d19f8728ae2b8353d4689886151","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2c3f2c553272fb9ad9fbe9d5cbff298f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"16bf1d19f8728ae2b8353d4689886151"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2c3f2c553272fb9ad9fbe9d5cbff298f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53? 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":"2c3f2c553272fb9ad9fbe9d5cbff298f"} device-1 | {"level":"info","message":"OPTIONS /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53? 200 0ms","method":"OPTIONS","requestID":"2c3f2c553272fb9ad9fbe9d5cbff298f","responseTime":0,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.865369,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"16bf1d19f8728ae2b8353d4689886151","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"16bf1d19f8728ae2b8353d4689886151","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE","level":"info","message":"auth send jwt","requestID":"e45e773ea415fff0e86879887a2405c6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e45e773ea415fff0e86879887a2405c6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e45e773ea415fff0e86879887a2405c6"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.587794441Z"}]},"request_id":"b002e7ea-cb8e-4016-a19b-83eef2c07fce","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.6314013} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"16bf1d19f8728ae2b8353d4689886151","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.151814,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e45e773ea415fff0e86879887a2405c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e45e773ea415fff0e86879887a2405c6","responseTime":4,"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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"96ba7abe-9f80-4ad9-9cd2-5bc5bf3dfa24","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.6388273} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"16bf1d19f8728ae2b8353d4689886151","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.543531974Z"}]},"request_id":"07b90cde-db0c-4dfd-adb4-c435a7fd3996","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.6431835} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e45e773ea415fff0e86879887a2405c6","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"86b09d63-6bfe-42e9-b0a8-9762d885f399","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.648937} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e45e773ea415fff0e86879887a2405c6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.587794441Z"}]},"request_id":"6c97dc3d-9e67-4c8d-a495-e4059b03a70f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.6586106} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"16bf1d19f8728ae2b8353d4689886151","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"16bf1d19f8728ae2b8353d4689886151"} gateway-1 | {"time_local":"07/Oct/2024:09:33:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/916a471d-fe27-48a3-befa-2000285deb4f? 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":"16bf1d19f8728ae2b8353d4689886151"} device-1 | {"level":"info","message":"PATCH /devices/916a471d-fe27-48a3-befa-2000285deb4f? 200 42ms","method":"PATCH","requestID":"16bf1d19f8728ae2b8353d4689886151","responseTime":42,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.543531974Z"}]},"request_id":"9f6ef2e6-13e3-4865-a914-2c37fadb103b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.670927} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e45e773ea415fff0e86879887a2405c6","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e45e773ea415fff0e86879887a2405c6"} gateway-1 | {"time_local":"07/Oct/2024:09:33:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.050","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e45e773ea415fff0e86879887a2405c6"} device-1 | {"level":"info","message":"PATCH /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53? 200 45ms","method":"PATCH","requestID":"e45e773ea415fff0e86879887a2405c6","responseTime":45,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE","level":"info","message":"auth send jwt","requestID":"514810465008c1919169907dd12b4b12"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"514810465008c1919169907dd12b4b12","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"514810465008c1919169907dd12b4b12"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.084945,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"514810465008c1919169907dd12b4b12","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"514810465008c1919169907dd12b4b12","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.543531974Z"}]},"request_id":"0473b025-ff72-4758-b9f3-6a2202b51913","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.697016} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"514810465008c1919169907dd12b4b12","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"514810465008c1919169907dd12b4b12"} gateway-1 | {"time_local":"07/Oct/2024:09:33:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53? 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":"514810465008c1919169907dd12b4b12"} device-1 | {"level":"info","message":"GET /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53? 200 16ms","method":"GET","requestID":"514810465008c1919169907dd12b4b12","responseTime":16,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE","level":"info","message":"auth send jwt","requestID":"35771f5e4a21529beb2f1341ab252154"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"35771f5e4a21529beb2f1341ab252154","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"35771f5e4a21529beb2f1341ab252154"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.102257,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"35771f5e4a21529beb2f1341ab252154","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"35771f5e4a21529beb2f1341ab252154","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.587794441Z"}]},"request_id":"168f8945-a3dd-41b2-8587-2a229d43ff4a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.7207074} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"35771f5e4a21529beb2f1341ab252154","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"35771f5e4a21529beb2f1341ab252154"} device-1 | {"level":"info","message":"GET /devices/916a471d-fe27-48a3-befa-2000285deb4f? 200 16ms","method":"GET","requestID":"35771f5e4a21529beb2f1341ab252154","responseTime":16,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/916a471d-fe27-48a3-befa-2000285deb4f? 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":"35771f5e4a21529beb2f1341ab252154"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE","level":"info","message":"auth send jwt","requestID":"c83da46206ad0845cd784d97d47501d9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c83da46206ad0845cd784d97d47501d9","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c83da46206ad0845cd784d97d47501d9"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.034385,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c83da46206ad0845cd784d97d47501d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c83da46206ad0845cd784d97d47501d9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Attempting to run experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Attempting to book experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Successfully booked experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"321d8580-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"321dd3a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.896585,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"321d8580-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"321d8580-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Received request.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Sent response.","req_id":367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.502334,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"321dd3a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"321dd3a0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.543531974Z"}]},"request_id":"85597608-a9df-4d18-8c56-c6b147debc51","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.7884855} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"321d8580-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.587794441Z"}]},"request_id":"62874810-2282-43bc-8ba6-7daf14a1de05","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.7942743} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"321d8580-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"321dd3a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53? 200 19ms","method":"GET","requestID":"321d8580-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"321dd3a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/916a471d-fe27-48a3-befa-2000285deb4f? 200 23ms","method":"GET","requestID":"321dd3a0-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Setting up experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Successfully set up experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"322833e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"32288200-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"32291e40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.363294,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Received request.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Successfully running experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"322833e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"322833e0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Sent response.","req_id":369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.745932,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"32288200-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"32288200-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e10786b-25f4-450d-b12b-ec6f3702e714","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.86014} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.334791,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"32291e40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","object_type":"device","rebac_allow":false,"scope_allow":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":"32291e40-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.587794441Z"}]},"request_id":"af809384-bf79-4823-9fc1-62daae64c689","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.864162} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.543531974Z"}]},"request_id":"200e11bc-6af0-40e1-8576-62a3439f0d34","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.865911} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"32288200-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"322833e0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"32291e40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/signaling 200 19ms","method":"POST","requestID":"32291e40-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"32288200-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc5fa2502-93f9-4b14-9564-0b1500b55562#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc5fa2502-93f9-4b14-9564-0b1500b55562","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"f16a6965-4055-43ae-b9ba-fa711640e531","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.8736303} device-1 | {"level":"info","message":"GET /devices/916a471d-fe27-48a3-befa-2000285deb4f? 200 24ms","method":"GET","requestID":"32288200-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e8499a76-c3fc-4ba8-974c-65c8856b30a1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.8739288} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"322c79a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"322833e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"c83da46206ad0845cd784d97d47501d9","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"GET /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53? 200 30ms","method":"GET","requestID":"322833e0-848f-11ef-9233-95baf63f17e0","responseTime":30,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6134bb7b-42b5-40e3-80bb-956edf4c6f59","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.8807948} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.153331,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"322c79a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","object_type":"device","rebac_allow":false,"scope_allow":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":"322c79a0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"322dd930-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"322c79a0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c83da46206ad0845cd784d97d47501d9"} device-1 | {"level":"info","message":"POST /devices/916a471d-fe27-48a3-befa-2000285deb4f/signaling 200 13ms","method":"POST","requestID":"322c79a0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f/signaling"} gateway-1 | {"time_local":"07/Oct/2024:09:33:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"778","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c83da46206ad0845cd784d97d47501d9"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c3c2295-a5ca-4c01-b161-95e29243da84","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.8886135} experiment-1 | {"level":"info","message":"POST /experiments? 201 153ms","method":"POST","requestID":"c83da46206ad0845cd784d97d47501d9","responseTime":153,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.136389,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"322dd930-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","object_type":"device","rebac_allow":false,"scope_allow":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":"322dd930-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"322dd930-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE","level":"info","message":"auth send jwt","requestID":"baf4dd7d1c7574a4f487d047104e60d6"} device-1 | {"level":"info","message":"POST /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/signaling 200 11ms","method":"POST","requestID":"322dd930-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"baf4dd7d1c7574a4f487d047104e60d6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"baf4dd7d1c7574a4f487d047104e60d6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"322ffc10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.707313,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Received request.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"baf4dd7d1c7574a4f487d047104e60d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"baf4dd7d1c7574a4f487d047104e60d6","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5175ad22-ccea-412c-bdec-13a03cbc57f3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.9018364} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Sent response.","req_id":374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.77713,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"322ffc10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","object_type":"device","rebac_allow":false,"scope_allow":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":"322ffc10-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.543531974Z"}]},"request_id":"f11a379a-f79f-4691-ba67-9a222a765f7c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.9037118} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"baf4dd7d1c7574a4f487d047104e60d6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"322ffc10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/916a471d-fe27-48a3-befa-2000285deb4f/signaling 200 10ms","method":"POST","requestID":"322ffc10-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"baf4dd7d1c7574a4f487d047104e60d6"} gateway-1 | {"time_local":"07/Oct/2024:09:33:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53? 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":"baf4dd7d1c7574a4f487d047104e60d6"} device-1 | {"level":"info","message":"GET /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53? 200 13ms","method":"GET","requestID":"baf4dd7d1c7574a4f487d047104e60d6","responseTime":13,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3231f7e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"32321ef0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE","level":"info","message":"auth send jwt","requestID":"2956eba52c70b3cb5a61e962f4f0fb9f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.011729,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Received request.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2956eba52c70b3cb5a61e962f4f0fb9f","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3231f7e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2956eba52c70b3cb5a61e962f4f0fb9f"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3231f7e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Sent response.","req_id":376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.877697,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"32321ef0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"32321ef0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.080101,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2956eba52c70b3cb5a61e962f4f0fb9f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2956eba52c70b3cb5a61e962f4f0fb9f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.543531974Z"}]},"request_id":"4521488d-cd02-4317-8026-cc69731c56d5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.9205573} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.587794441Z"}]},"request_id":"128669fe-9ecf-4475-927a-d47ff870ca8f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.9218137} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3231f7e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"32321ef0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:20.587794441Z"}]},"request_id":"4c2e95df-897f-4dd0-8153-a72b3910f52a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.92589} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2956eba52c70b3cb5a61e962f4f0fb9f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3231f7e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53? 200 19ms","method":"GET","requestID":"3231f7e0-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"32321ef0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/916a471d-fe27-48a3-befa-2000285deb4f? 200 19ms","method":"GET","requestID":"32321ef0-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Building connection plan","requestID":"c83da46206ad0845cd784d97d47501d9"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"52bef449-8c8d-4608-84d9-b7743df16bbd"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"7861db6c-36b2-4498-a88b-3656d21e1b38"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"fad8f299-eb9b-491b-9149-47914dc69b3a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c83da46206ad0845cd784d97d47501d9"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2956eba52c70b3cb5a61e962f4f0fb9f"} gateway-1 | {"time_local":"07/Oct/2024:09:33:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/916a471d-fe27-48a3-befa-2000285deb4f? 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":"2956eba52c70b3cb5a61e962f4f0fb9f"} 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/916a471d-fe27-48a3-befa-2000285deb4f"},{"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/7e2b90de-7409-4ae1-88bf-4a3502469b53"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c83da46206ad0845cd784d97d47501d9"} device-1 | {"level":"info","message":"GET /devices/916a471d-fe27-48a3-befa-2000285deb4f? 200 17ms","method":"GET","requestID":"2956eba52c70b3cb5a61e962f4f0fb9f","responseTime":17,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"32357a50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.409572,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"32357a50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293602,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwMn0.pfrvSnBSJ8VeIf81aBEJzho0TXRbXeOrEsM4UpuA4uE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"32357a50-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"46ec7b39-0757-44d9-b5b4-01fe8feab09c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.9463334} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6bdbbf4c-54f1-4fef-aae9-2a3c94065e06","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.9465766} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"32357a50-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"32357a50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"32357a50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b'","requestID":"32357a50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b'","requestID":"32357a50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"32357a50-848f-11ef-9233-95baf63f17e0"} 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":"32357a50-848f-11ef-9233-95baf63f17e0","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":"32357a50-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c83da46206ad0845cd784d97d47501d9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"323e53f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ff05f20-ae9a-483e-8257-008137476167","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293602.995613} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.686596,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"323e53f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"323e53f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"323e53f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/signaling 200 8ms","method":"POST","requestID":"323e53f0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"323fda90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:23Z"} device-1 | {"device":"7e2b90de-7409-4ae1-88bf-4a3502469b53","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"7e2b90de-7409-4ae1-88bf-4a3502469b53","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cc2a92ae-2c88-4be3-8701-601ced67aa78","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.005764} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.385278,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"323fda90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","object_type":"device","rebac_allow":false,"scope_allow":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":"323fda90-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"323fda90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/916a471d-fe27-48a3-befa-2000285deb4f/signaling 200 9ms","method":"POST","requestID":"323fda90-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f/signaling"} device-1 | {"device":"916a471d-fe27-48a3-befa-2000285deb4f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"916a471d-fe27-48a3-befa-2000285deb4f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 2293678388258686198 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:JGPN\r\na=ice-pwd:KDsvj2+6DhDfkrJNmhDgae+k\r\na=ice-options:trickle\r\na=fingerprint:sha-256 2B:97:73:14:70:1A:AE:7D:DD:81:C7:51:73:31:30:78:8D:C8:E6:3F:BB:3D:3E:AC:A6:AB:04:9B:5C:48:67:B0\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"7e2b90de-7409-4ae1-88bf-4a3502469b53","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 3139635356995378845 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:geac\r\na=ice-pwd:9UM+65ouWrf+fsQ+7isiirMe\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9D:55:8E:C0:6F:B1:95:B0:14:A0:0D:8F:1E:39:33:75:C9:26:83:5E:8E:74:74:38:DF:28:FD:AB:33:26:D6:BA\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"916a471d-fe27-48a3-befa-2000285deb4f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:994685248 1 udp 2113937151 6e84fb3e-3aad-4fda-ae1b-aea2d0940cdf.local 49459 typ host generation 0 ufrag geac network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"916a471d-fe27-48a3-befa-2000285deb4f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2824998995 1 udp 1677729535 141.24.211.56 49459 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag geac network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"916a471d-fe27-48a3-befa-2000285deb4f","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/916a471d-fe27-48a3-befa-2000285deb4f'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f'"} device-1 | {"content":{"candidate":"candidate:3141769675 1 udp 2113937151 60e784d0-0ef0-43e7-9dbc-64e1f8c8570f.local 49614 typ host generation 0 ufrag JGPN network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7e2b90de-7409-4ae1-88bf-4a3502469b53","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:677918936 1 udp 1677729535 141.24.211.56 49614 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag JGPN network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7e2b90de-7409-4ae1-88bf-4a3502469b53","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/7e2b90de-7409-4ae1-88bf-4a3502469b53'"} device-1 | {"device":"7e2b90de-7409-4ae1-88bf-4a3502469b53","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"916a471d-fe27-48a3-befa-2000285deb4f","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/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7e2b90de-7409-4ae1-88bf-4a3502469b53","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"916a471d-fe27-48a3-befa-2000285deb4f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"42196643e61360d55f982bfa8f83fc38","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7e2b90de-7409-4ae1-88bf-4a3502469b53","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":[{"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/916a471d-fe27-48a3-befa-2000285deb4f"},{"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/7e2b90de-7409-4ae1-88bf-4a3502469b53"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b"}}},"level":"info","message":"received a callback","requestID":"42196643e61360d55f982bfa8f83fc38"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"42196643e61360d55f982bfa8f83fc38","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"916a471d-fe27-48a3-befa-2000285deb4f","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":"42196643e61360d55f982bfa8f83fc38","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"42196643e61360d55f982bfa8f83fc38"} device-1 | {"device":"916a471d-fe27-48a3-befa-2000285deb4f","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","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/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d32f53f57bc6b881417525d69dc9657b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d32f53f57bc6b881417525d69dc9657b","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f"},{"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/7e2b90de-7409-4ae1-88bf-4a3502469b53"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b"}}},"level":"info","message":"received a callback","requestID":"d32f53f57bc6b881417525d69dc9657b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"324de450-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"15f5a7dc-7c16-421e-8e59-9c95476dee72","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.0984216} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.921281,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"324de450-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","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":"324de450-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"324de450-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b 200 10ms","method":"GET","requestID":"324de450-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 35ms","method":"POST","requestID":"d32f53f57bc6b881417525d69dc9657b","responseTime":35,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"d32f53f57bc6b881417525d69dc9657b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"32525120-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93b19c01-4554-4d7a-ac14-327752742463","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.12664} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.61666,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"32525120-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"32525120-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"32525120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/916a471d-fe27-48a3-befa-2000285deb4f/signaling 200 10ms","method":"POST","requestID":"32525120-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"325425e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad20fb9e-7c75-41eb-be91-3bec7af31a64","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.138898} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.628672,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"325425e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","object_type":"device","rebac_allow":false,"scope_allow":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":"325425e0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"325425e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/signaling 200 10ms","method":"POST","requestID":"325425e0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwM30.n4qYC_arpTgE6Mi7r2uJLKdoUJvbBIoiKcbrZJIxdpI","level":"info","message":"auth send jwt","requestID":"c736a94443c91b8b32464b28b77738d9"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"c736a94443c91b8b32464b28b77738d9","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c5fa2502-93f9-4b14-9564-0b1500b55562","requestID":"c736a94443c91b8b32464b28b77738d9"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.218307,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c736a94443c91b8b32464b28b77738d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293603,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwM30.n4qYC_arpTgE6Mi7r2uJLKdoUJvbBIoiKcbrZJIxdpI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c736a94443c91b8b32464b28b77738d9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c5fa2502-93f9-4b14-9564-0b1500b55562","requestID":"c736a94443c91b8b32464b28b77738d9"} gateway-1 | {"time_local":"07/Oct/2024:09:33:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c5fa2502-93f9-4b14-9564-0b1500b55562 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":"c736a94443c91b8b32464b28b77738d9"} experiment-1 | {"level":"info","message":"GET /experiments/c5fa2502-93f9-4b14-9564-0b1500b55562 200 15ms","method":"GET","requestID":"c736a94443c91b8b32464b28b77738d9","responseTime":15,"status":200,"url":"/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwM30.n4qYC_arpTgE6Mi7r2uJLKdoUJvbBIoiKcbrZJIxdpI","level":"info","message":"auth send jwt","requestID":"65a4987f37921c3e7fee7b4ec73741f0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"65a4987f37921c3e7fee7b4ec73741f0","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c5fa2502-93f9-4b14-9564-0b1500b55562","requestID":"65a4987f37921c3e7fee7b4ec73741f0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.134269,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"65a4987f37921c3e7fee7b4ec73741f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293603,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwM30.n4qYC_arpTgE6Mi7r2uJLKdoUJvbBIoiKcbrZJIxdpI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"65a4987f37921c3e7fee7b4ec73741f0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Attempting to finish experiment","requestID":"65a4987f37921c3e7fee7b4ec73741f0"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"3273e2e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.686913,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3273e2e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293603,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwM30.n4qYC_arpTgE6Mi7r2uJLKdoUJvbBIoiKcbrZJIxdpI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3273e2e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","device":"916a471d-fe27-48a3-befa-2000285deb4f","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","device":"7e2b90de-7409-4ae1-88bf-4a3502469b53","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/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe330b17e-fdff-4b6b-ac9f-3e3f0aebe46b': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"ac1a0eee-e53c-45fc-9534-bf9d00162a06","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.3644192} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"353788fa-1632-4f58-846f-fb74f381e07b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.3650227} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b1604da74a26cc9420a942903d29ded3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 10ms","method":"POST","requestID":"3273e2e0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b1604da74a26cc9420a942903d29ded3","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3f351b961c4ba8007c862aff4d2faddf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"closed","url":"http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f"},{"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/7e2b90de-7409-4ae1-88bf-4a3502469b53"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b"}}},"level":"info","message":"received a callback","requestID":"b1604da74a26cc9420a942903d29ded3"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3f351b961c4ba8007c862aff4d2faddf","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":"closed","url":"http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f"},{"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/7e2b90de-7409-4ae1-88bf-4a3502469b53"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b"}}},"level":"info","message":"received a callback","requestID":"3f351b961c4ba8007c862aff4d2faddf"} device-1 | {"data":{"peerconnection":"e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"3273e2e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b 204 44ms","method":"DELETE","requestID":"3273e2e0-848f-11ef-9233-95baf63f17e0","responseTime":44,"status":204,"url":"/peerconnections/e330b17e-fdff-4b6b-ac9f-3e3f0aebe46b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"},"level":"info","message":"Successfully finished experiment","requestID":"65a4987f37921c3e7fee7b4ec73741f0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"327e6a30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F916a471d-fe27-48a3-befa-2000285deb4f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"abb9d069-296d-4be9-a2f1-caf3aff734a5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.417439} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.377502,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"327e6a30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f","object_type":"device","rebac_allow":false,"scope_allow":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":"327e6a30-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"327e6a30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/916a471d-fe27-48a3-befa-2000285deb4f/signaling 200 13ms","method":"POST","requestID":"327e6a30-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/916a471d-fe27-48a3-befa-2000285deb4f/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc5fa2502-93f9-4b14-9564-0b1500b55562': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc5fa2502-93f9-4b14-9564-0b1500b55562","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"08bb5b56-d363-425a-9845-00a86a4e9986","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.4256618} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5ea90b35-9554-4585-b664-7b0e53e87f73","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.4263954} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3280db30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"65a4987f37921c3e7fee7b4ec73741f0","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7e2b90de-7409-4ae1-88bf-4a3502469b53","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"41dfd699-06be-4476-a64e-1efe599ab2a6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.4330184} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.389121,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3280db30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53","object_type":"device","rebac_allow":false,"scope_allow":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":"3280db30-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3280db30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/signaling 200 14ms","method":"POST","requestID":"3280db30-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c5fa2502-93f9-4b14-9564-0b1500b55562","requestID":"65a4987f37921c3e7fee7b4ec73741f0"} gateway-1 | {"time_local":"07/Oct/2024:09:33:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c5fa2502-93f9-4b14-9564-0b1500b55562 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":"65a4987f37921c3e7fee7b4ec73741f0"} experiment-1 | {"level":"info","message":"DELETE /experiments/c5fa2502-93f9-4b14-9564-0b1500b55562 204 168ms","method":"DELETE","requestID":"65a4987f37921c3e7fee7b4ec73741f0","responseTime":168,"status":204,"url":"/experiments/c5fa2502-93f9-4b14-9564-0b1500b55562"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"b1604da74a26cc9420a942903d29ded3","responseTime":128,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"b1604da74a26cc9420a942903d29ded3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"3f351b961c4ba8007c862aff4d2faddf","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"3f351b961c4ba8007c862aff4d2faddf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwM30.n4qYC_arpTgE6Mi7r2uJLKdoUJvbBIoiKcbrZJIxdpI","level":"info","message":"auth send jwt","requestID":"c822aa39a6967c6f593af580a27e2401"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c822aa39a6967c6f593af580a27e2401","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c822aa39a6967c6f593af580a27e2401"} gateway-1 | {"time_local":"07/Oct/2024:09:33:23 +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.923","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b8f45d94fd550709657d6d49ff437060"} gateway-1 | {"time_local":"07/Oct/2024:09:33:23 +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.912","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6c073029b3a63022cba75e8cad1589af"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/7e2b90de-7409-4ae1-88bf-4a3502469b53' closed"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.76977,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:23Z"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/916a471d-fe27-48a3-befa-2000285deb4f' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c822aa39a6967c6f593af580a27e2401","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293603,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwM30.n4qYC_arpTgE6Mi7r2uJLKdoUJvbBIoiKcbrZJIxdpI"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"c822aa39a6967c6f593af580a27e2401","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c8fb4cd6-c190-45c9-9d8c-ff5ba3c07986","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.5281982} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c822aa39a6967c6f593af580a27e2401","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c0ce20af-1447-403e-b59b-3c46994c2c98","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.5323658} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c822aa39a6967c6f593af580a27e2401","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"7f9869fc-4bf0-4e73-a379-72abbe4b3595","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.542774} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52a95bed-5806-4603-a324-4109ea3d55b3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.5428767} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"c822aa39a6967c6f593af580a27e2401","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.542755633Z"}]},"request_id":"570cf060-292f-49ed-97ce-8888dd189ce1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.5466788} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c822aa39a6967c6f593af580a27e2401","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c822aa39a6967c6f593af580a27e2401"} gateway-1 | {"time_local":"07/Oct/2024:09:33:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c822aa39a6967c6f593af580a27e2401"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"c822aa39a6967c6f593af580a27e2401","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwM30.n4qYC_arpTgE6Mi7r2uJLKdoUJvbBIoiKcbrZJIxdpI","level":"info","message":"auth send jwt","requestID":"39e5b2be24d1a4506e15e5990aed1004"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"39e5b2be24d1a4506e15e5990aed1004","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"39e5b2be24d1a4506e15e5990aed1004"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.727801,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:23Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"39e5b2be24d1a4506e15e5990aed1004","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293603,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwM30.n4qYC_arpTgE6Mi7r2uJLKdoUJvbBIoiKcbrZJIxdpI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"39e5b2be24d1a4506e15e5990aed1004","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6fb8bfe6-7422-48c6-813d-f48ed4a1634d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.5690804} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"39e5b2be24d1a4506e15e5990aed1004","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02301bf0-7828-479d-bc94-829e55e35ede","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.5740664} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"39e5b2be24d1a4506e15e5990aed1004","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"8f1be56e-504e-49e7-9fd6-0bd6178b139e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.5898628} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f86534c-7e4e-4ad7-bb6b-722d770d6274","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.590034} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"39e5b2be24d1a4506e15e5990aed1004","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.589842359Z"}]},"request_id":"69152a45-2596-4548-9d87-3a7812c4ede7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293603.5963922} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"39e5b2be24d1a4506e15e5990aed1004","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"39e5b2be24d1a4506e15e5990aed1004"} gateway-1 | {"time_local":"07/Oct/2024:09:33:23 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.050","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"39e5b2be24d1a4506e15e5990aed1004"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"39e5b2be24d1a4506e15e5990aed1004","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNH0.xYv-NlCN6tpTtd8Miquy9gSeOE83M-qXGcNkqmUUUIA","level":"info","message":"auth send jwt","requestID":"ba0459b20e21ec24608498395d7c3ded"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ba0459b20e21ec24608498395d7c3ded","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ba0459b20e21ec24608498395d7c3ded"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.078072,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ba0459b20e21ec24608498395d7c3ded","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293604,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNH0.xYv-NlCN6tpTtd8Miquy9gSeOE83M-qXGcNkqmUUUIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ba0459b20e21ec24608498395d7c3ded","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.589842359Z"}]},"request_id":"df2acf81-2321-4be4-b1e4-3c086edad1d5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293604.09733} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ba0459b20e21ec24608498395d7c3ded","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1f2a055e-b36d-49ee-8be9-9176b1493181","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293604.1054142} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"ba0459b20e21ec24608498395d7c3ded","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.589842359Z"}]},"request_id":"9f4f9847-d7e9-40cf-b843-4e2bbda79e50","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293604.1184578} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"ba0459b20e21ec24608498395d7c3ded","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ba0459b20e21ec24608498395d7c3ded"} device-1 | {"level":"info","message":"PATCH /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025 200 35ms","method":"PATCH","requestID":"ba0459b20e21ec24608498395d7c3ded","responseTime":35,"status":200,"url":"/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025"} gateway-1 | {"time_local":"07/Oct/2024:09:33:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"ba0459b20e21ec24608498395d7c3ded"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNH0.xYv-NlCN6tpTtd8Miquy9gSeOE83M-qXGcNkqmUUUIA","level":"info","message":"auth send jwt","requestID":"9d0582390574f0834347bc2c04129dbe"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9d0582390574f0834347bc2c04129dbe","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9d0582390574f0834347bc2c04129dbe"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.195992,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9d0582390574f0834347bc2c04129dbe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293604,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNH0.xYv-NlCN6tpTtd8Miquy9gSeOE83M-qXGcNkqmUUUIA"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9d0582390574f0834347bc2c04129dbe","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9d0582390574f0834347bc2c04129dbe"} gateway-1 | {"time_local":"07/Oct/2024:09:33:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025/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.9","requestID":"9d0582390574f0834347bc2c04129dbe"} device-1 | {"level":"info","message":"POST /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025/websocket 200 21ms","method":"POST","requestID":"9d0582390574f0834347bc2c04129dbe","responseTime":21,"status":200,"url":"/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"989bc2387a33db541ea62c76a91a6212","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"989bc2387a33db541ea62c76a91a6212","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/44b2d816-955d-4a9f-be76-5e506d22782c/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":"989bc2387a33db541ea62c76a91a6212"} device-1 | {"level":"info","message":"OPTIONS /devices/44b2d816-955d-4a9f-be76-5e506d22782c/websocket 200 1ms","method":"OPTIONS","requestID":"989bc2387a33db541ea62c76a91a6212","responseTime":1,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns","level":"info","message":"auth send jwt","requestID":"f8d4ff2f0d378f9adb9615767dcafd8a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f8d4ff2f0d378f9adb9615767dcafd8a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"f8d4ff2f0d378f9adb9615767dcafd8a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.736868,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f8d4ff2f0d378f9adb9615767dcafd8a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f8d4ff2f0d378f9adb9615767dcafd8a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"f8d4ff2f0d378f9adb9615767dcafd8a"} gateway-1 | {"time_local":"07/Oct/2024:09:33:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/44b2d816-955d-4a9f-be76-5e506d22782c/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":"f8d4ff2f0d378f9adb9615767dcafd8a"} device-1 | {"level":"info","message":"POST /devices/44b2d816-955d-4a9f-be76-5e506d22782c/websocket 200 23ms","method":"POST","requestID":"f8d4ff2f0d378f9adb9615767dcafd8a","responseTime":23,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ba6c43a32644f25f4e1b23425fc25c83","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"ba6c43a32644f25f4e1b23425fc25c83","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/44b2d816-955d-4a9f-be76-5e506d22782c? 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":"ba6c43a32644f25f4e1b23425fc25c83"} device-1 | {"level":"info","message":"OPTIONS /devices/44b2d816-955d-4a9f-be76-5e506d22782c? 200 1ms","method":"OPTIONS","requestID":"ba6c43a32644f25f4e1b23425fc25c83","responseTime":1,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns","level":"info","message":"auth send jwt","requestID":"53f46ab247453e9b95cb4d4f1f8bfc42"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"53f46ab247453e9b95cb4d4f1f8bfc42","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"53f46ab247453e9b95cb4d4f1f8bfc42"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.279055,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"53f46ab247453e9b95cb4d4f1f8bfc42","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"53f46ab247453e9b95cb4d4f1f8bfc42","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.542755633Z"}]},"request_id":"8bc9bf58-d7a9-43d7-9a71-e67f94d97c8e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.6911352} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"53f46ab247453e9b95cb4d4f1f8bfc42","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10f5b46c-334c-40dd-a768-e335bea4d6ec","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.6980114} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"53f46ab247453e9b95cb4d4f1f8bfc42","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.542755633Z"}]},"request_id":"43be13f2-4f9e-495c-9ed5-14c90550d026","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.7120512} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"53f46ab247453e9b95cb4d4f1f8bfc42","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"53f46ab247453e9b95cb4d4f1f8bfc42"} gateway-1 | {"time_local":"07/Oct/2024:09:33:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/44b2d816-955d-4a9f-be76-5e506d22782c? 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":"53f46ab247453e9b95cb4d4f1f8bfc42"} device-1 | {"level":"info","message":"PATCH /devices/44b2d816-955d-4a9f-be76-5e506d22782c? 200 38ms","method":"PATCH","requestID":"53f46ab247453e9b95cb4d4f1f8bfc42","responseTime":38,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns","level":"info","message":"auth send jwt","requestID":"98d661d116ab54cd72bab81262022fd6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"98d661d116ab54cd72bab81262022fd6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"98d661d116ab54cd72bab81262022fd6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.191545,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"98d661d116ab54cd72bab81262022fd6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"98d661d116ab54cd72bab81262022fd6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.542755633Z"}]},"request_id":"8f1222a8-bff7-4b5d-b02b-dc3599e68fdc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.741578} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"98d661d116ab54cd72bab81262022fd6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"98d661d116ab54cd72bab81262022fd6"} device-1 | {"level":"info","message":"GET /devices/44b2d816-955d-4a9f-be76-5e506d22782c? 200 17ms","method":"GET","requestID":"98d661d116ab54cd72bab81262022fd6","responseTime":17,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/44b2d816-955d-4a9f-be76-5e506d22782c? 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":"98d661d116ab54cd72bab81262022fd6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns","level":"info","message":"auth send jwt","requestID":"7564c9324babbbeb36d88885d80b6652"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7564c9324babbbeb36d88885d80b6652","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7564c9324babbbeb36d88885d80b6652"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.634964,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7564c9324babbbeb36d88885d80b6652","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7564c9324babbbeb36d88885d80b6652","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.589842359Z"}]},"request_id":"6e1fdcec-9df3-4b3f-bac1-10ee674235c5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.7677343} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7564c9324babbbeb36d88885d80b6652","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7564c9324babbbeb36d88885d80b6652"} gateway-1 | {"time_local":"07/Oct/2024:09:33:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025? 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":"7564c9324babbbeb36d88885d80b6652"} device-1 | {"level":"info","message":"GET /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025? 200 16ms","method":"GET","requestID":"7564c9324babbbeb36d88885d80b6652","responseTime":16,"status":200,"url":"/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns","level":"info","message":"auth send jwt","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.169475,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Attempting to run experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Attempting to book experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Successfully booked experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"33ee74f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"33eec310-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Received request.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.068177,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"33ee74f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"33ee74f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Sent response.","req_id":399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.138865,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"33eec310-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"33eec310-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.542755633Z"}]},"request_id":"5b3b967f-409b-49ef-9820-5eea44bbd89b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.833177} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"33ee74f0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.589842359Z"}]},"request_id":"0b494687-025d-45f1-91e9-cf8740c04f2e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.8343415} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"33eec310-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"33ee74f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/44b2d816-955d-4a9f-be76-5e506d22782c? 200 16ms","method":"GET","requestID":"33ee74f0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"33eec310-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025? 200 15ms","method":"GET","requestID":"33eec310-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Setting up experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Successfully set up experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"33f94a60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"33f9bf90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"33fa34c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.198101,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Received request.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Successfully running experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"33f94a60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"33f94a60-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Sent response.","req_id":401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.495728,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"33f9bf90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"33f9bf90-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.705525,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28f80ea4-533e-4027-98b3-e370afbf308c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.9087598} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"33fa34c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","object_type":"device","rebac_allow":false,"scope_allow":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":"33fa34c0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"33fa34c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/44b2d816-955d-4a9f-be76-5e506d22782c/signaling 200 20ms","method":"POST","requestID":"33fa34c0-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.542755633Z"}]},"request_id":"16a210a7-12c7-441d-8e4b-79502482453a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.9140947} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.589842359Z"}]},"request_id":"4a8a78f3-346d-4b7e-81c7-368f580cf194","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.9174662} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"33fdde40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 14ms","method":"POST","requestID":"33f94a60-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 11ms","method":"POST","requestID":"33f9bf90-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"33f94a60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/44b2d816-955d-4a9f-be76-5e506d22782c? 200 39ms","method":"GET","requestID":"33f94a60-848f-11ef-9233-95baf63f17e0","responseTime":39,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"33f9bf90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025? 200 38ms","method":"GET","requestID":"33f9bf90-848f-11ef-9233-95baf63f17e0","responseTime":38,"status":200,"url":"/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F88c3bf7f-f021-496a-befa-adebea7a3a9f#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F88c3bf7f-f021-496a-befa-adebea7a3a9f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"e64d327b-4f21-46f4-b27d-8fb20bfc6995","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.93479} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa05f519-4305-42bd-91c5-456eddf10869","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.9351413} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.714431,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"33fdde40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","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":"34000120-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"33fdde40-848f-11ef-9233-95baf63f17e0","responseTime":12,"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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"80fbdff7-02db-47bc-b962-559d51e0fca1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.937314} authorization-1 | {"level":"info","message":"POST /relations/update 200 33ms","method":"POST","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5","responseTime":33,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"33fdde40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} device-1 | {"level":"info","message":"POST /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025/signaling 200 20ms","method":"POST","requestID":"33fdde40-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d359711-88ba-4db4-94fd-f01e415b1a05","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.9468086} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.674576,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"34000120-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","object_type":"device","rebac_allow":false,"scope_allow":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":"34000120-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"34000120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/44b2d816-955d-4a9f-be76-5e506d22782c/signaling 200 15ms","method":"POST","requestID":"34000120-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 173ms","method":"POST","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5","responseTime":173,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.179","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns","level":"info","message":"auth send jwt","requestID":"9c66dc81256d6eda066c6c3ae0b37e74"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9c66dc81256d6eda066c6c3ae0b37e74","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"34035c80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9c66dc81256d6eda066c6c3ae0b37e74"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Received request.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Sent response.","req_id":406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.670447,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9c66dc81256d6eda066c6c3ae0b37e74","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"9c66dc81256d6eda066c6c3ae0b37e74","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eab6ba60-017c-4bab-8ab8-3789b12c28a7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.965147} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.344801,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"34035c80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"34035c80-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.542755633Z"}]},"request_id":"05a9f3ab-7777-42be-9fce-e22b0b656bca","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.9688015} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"34035c80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025/signaling 200 9ms","method":"POST","requestID":"34035c80-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"9c66dc81256d6eda066c6c3ae0b37e74","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"34050a30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"34055850-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9c66dc81256d6eda066c6c3ae0b37e74"} gateway-1 | {"time_local":"07/Oct/2024:09:33:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/44b2d816-955d-4a9f-be76-5e506d22782c? 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":"9c66dc81256d6eda066c6c3ae0b37e74"} device-1 | {"level":"info","message":"GET /devices/44b2d816-955d-4a9f-be76-5e506d22782c? 200 12ms","method":"GET","requestID":"9c66dc81256d6eda066c6c3ae0b37e74","responseTime":12,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.77165,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Received request.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"34050a30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"34050a30-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39248","level":"info","msg":"Sent response.","req_id":408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.62359,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"34055850-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"34055850-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns","level":"info","message":"auth send jwt","requestID":"4012918aca01b6f2e5f51e2730016b70"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4012918aca01b6f2e5f51e2730016b70","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4012918aca01b6f2e5f51e2730016b70"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.542755633Z"}]},"request_id":"47074a5e-dcea-4e8f-b5f3-2c26c5f05738","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.97925} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"34050a30-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.589842359Z"}]},"request_id":"1dcb4d5c-1413-4149-ab5c-8a3568072142","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.9802344} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"34050a30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"34055850-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} device-1 | {"level":"info","message":"GET /devices/44b2d816-955d-4a9f-be76-5e506d22782c? 200 12ms","method":"GET","requestID":"34050a30-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.528637,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4012918aca01b6f2e5f51e2730016b70","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4012918aca01b6f2e5f51e2730016b70","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"34055850-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025? 200 14ms","method":"GET","requestID":"34055850-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:23.589842359Z"}]},"request_id":"66f25fc3-27e7-4739-97ef-bd6acc777135","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293605.9880226} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Building connection plan","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"9c94b90c-64aa-4e33-b07d-f4f7d80cb4ed"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"4383c564-3cd7-45fe-a3d9-1ba7b33ca945"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"e409e61a-8f81-4b62-ba6d-6ee208e6b3a8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4012918aca01b6f2e5f51e2730016b70","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/25e664f1-67c7-487b-a6ef-1aa1ed72d025"},{"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/44b2d816-955d-4a9f-be76-5e506d22782c"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3407f060-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4012918aca01b6f2e5f51e2730016b70"} device-1 | {"level":"info","message":"GET /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025? 200 14ms","method":"GET","requestID":"4012918aca01b6f2e5f51e2730016b70","responseTime":14,"status":200,"url":"/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025? 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":"4012918aca01b6f2e5f51e2730016b70"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.730603,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3407f060-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293605,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwNX0.B8VKf9BPNjxd0JwfsP19XPozAP1sAIlSOqPznlSTlns"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3407f060-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"5f244b8e-c30f-4260-a490-abb38c4c606d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293606.001513} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce67342d-91ce-462f-8ffb-d9e9852a9b76","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293606.0017576} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3407f060-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3407f060-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3407f060-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948'","requestID":"3407f060-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948'","requestID":"3407f060-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3407f060-848f-11ef-9233-95baf63f17e0"} 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":"3407f060-848f-11ef-9233-95baf63f17e0","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":"3407f060-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b867f00cb74ba18aeb2d0fc83c5f97e5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"341006b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:26Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"689992ed-1e75-419f-9c83-e56058223987","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293606.0478377} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.618733,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"341006b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"341006b0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"341006b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/44b2d816-955d-4a9f-be76-5e506d22782c/signaling 200 9ms","method":"POST","requestID":"341006b0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3411db70-848f-11ef-9233-95baf63f17e0"} device-1 | {"device":"44b2d816-955d-4a9f-be76-5e506d22782c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"44b2d816-955d-4a9f-be76-5e506d22782c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:26Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"59265bdb-2768-4738-a03d-c6ee4a67c133","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293606.060216} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.582215,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:26Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3411db70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","object_type":"device","rebac_allow":false,"scope_allow":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":"3411db70-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 169428942092315486 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:cXJG\r\na=ice-pwd:1Iam6K+bnTBrXWqLRSSurZtG\r\na=ice-options:trickle\r\na=fingerprint:sha-256 66:59:06:E3:6B:1B:9F:35:8D:13:CC:74:78:65:DE:C7:D2:16:6D:FA:9C:47:5A:4B:37:D0:21:58:6A:AC:B0:89\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"44b2d816-955d-4a9f-be76-5e506d22782c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3411db70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025/signaling 200 12ms","method":"POST","requestID":"3411db70-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025/signaling"} device-1 | {"device":"44b2d816-955d-4a9f-be76-5e506d22782c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"25e664f1-67c7-487b-a6ef-1aa1ed72d025","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":"a52f60d5-d3a3-470c-96e6-3c2c3f5a7948","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"25e664f1-67c7-487b-a6ef-1aa1ed72d025","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":"25e664f1-67c7-487b-a6ef-1aa1ed72d025","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":"25e664f1-67c7-487b-a6ef-1aa1ed72d025","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":"25e664f1-67c7-487b-a6ef-1aa1ed72d025","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/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a52f60d5-d3a3-470c-96e6-3c2c3f5a7948","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"aa4fb83ce258c4163cc48bdf7fe13bed","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"aa4fb83ce258c4163cc48bdf7fe13bed","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/25e664f1-67c7-487b-a6ef-1aa1ed72d025"},{"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/44b2d816-955d-4a9f-be76-5e506d22782c"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948"}}},"level":"info","message":"received a callback","requestID":"aa4fb83ce258c4163cc48bdf7fe13bed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"aa4fb83ce258c4163cc48bdf7fe13bed","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"aa4fb83ce258c4163cc48bdf7fe13bed"} device-1 | {"content":{"candidate":"candidate:2459962737 1 udp 2113937151 f52dadd5-e719-4ba0-a6da-292c401d26cc.local 54872 typ host generation 0 ufrag cXJG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"44b2d816-955d-4a9f-be76-5e506d22782c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:378365710 1 udp 1677729535 141.24.211.56 54872 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag cXJG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"44b2d816-955d-4a9f-be76-5e506d22782c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1166071941 1 udp 33562623 141.24.210.113 61114 typ relay raddr 141.24.211.56 rport 54872 generation 0 ufrag cXJG network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"44b2d816-955d-4a9f-be76-5e506d22782c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"44b2d816-955d-4a9f-be76-5e506d22782c","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/44b2d816-955d-4a9f-be76-5e506d22782c'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c'"} device-1 | {"data":{"peerconnection":"a52f60d5-d3a3-470c-96e6-3c2c3f5a7948","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"25e664f1-67c7-487b-a6ef-1aa1ed72d025","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":"44b2d816-955d-4a9f-be76-5e506d22782c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"25e664f1-67c7-487b-a6ef-1aa1ed72d025","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":"a52f60d5-d3a3-470c-96e6-3c2c3f5a7948","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/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a52f60d5-d3a3-470c-96e6-3c2c3f5a7948","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"edf5cff1427ec10967e859d8208e2f4a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"edf5cff1427ec10967e859d8208e2f4a","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/25e664f1-67c7-487b-a6ef-1aa1ed72d025"},{"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/44b2d816-955d-4a9f-be76-5e506d22782c"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948"}}},"level":"info","message":"received a callback","requestID":"edf5cff1427ec10967e859d8208e2f4a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"35516050-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa52f60d5-d3a3-470c-96e6-3c2c3f5a7948","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c0f3a3a2-a3f3-48a2-9d41-737d6c53d176","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.1537337} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.37925,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"35516050-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948","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":"35516050-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"35516050-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948 200 8ms","method":"GET","requestID":"35516050-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"edf5cff1427ec10967e859d8208e2f4a","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"edf5cff1427ec10967e859d8208e2f4a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"35557f00-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f01ff1f0-6ee8-41ec-b6a8-f984323bbcac","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.1809163} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.494081,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"35557f00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"35557f00-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"35557f00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025/signaling 200 9ms","method":"POST","requestID":"35557f00-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"355753c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50a75ee6-1208-4325-ae5d-5fea5972bb96","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.192155} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.483721,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"355753c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"355753c0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"355753c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/44b2d816-955d-4a9f-be76-5e506d22782c/signaling 200 9ms","method":"POST","requestID":"355753c0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwOH0.P_LuzepyK4wuiI0JQir-iLQJlTE5CPBKX_5g5UQGIuU","level":"info","message":"auth send jwt","requestID":"fbc2d60c159b5d7435398e7abfb02c42"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"fbc2d60c159b5d7435398e7abfb02c42","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f","requestID":"fbc2d60c159b5d7435398e7abfb02c42"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.132201,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"fbc2d60c159b5d7435398e7abfb02c42","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293608,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwOH0.P_LuzepyK4wuiI0JQir-iLQJlTE5CPBKX_5g5UQGIuU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fbc2d60c159b5d7435398e7abfb02c42","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f","requestID":"fbc2d60c159b5d7435398e7abfb02c42"} gateway-1 | {"time_local":"07/Oct/2024:09:33:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f 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":"fbc2d60c159b5d7435398e7abfb02c42"} experiment-1 | {"level":"info","message":"GET /experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f 200 16ms","method":"GET","requestID":"fbc2d60c159b5d7435398e7abfb02c42","responseTime":16,"status":200,"url":"/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwOH0.P_LuzepyK4wuiI0JQir-iLQJlTE5CPBKX_5g5UQGIuU","level":"info","message":"auth send jwt","requestID":"4e64d72551861451bc308551233ef824"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4e64d72551861451bc308551233ef824","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f","requestID":"4e64d72551861451bc308551233ef824"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.230097,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4e64d72551861451bc308551233ef824","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293608,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwOH0.P_LuzepyK4wuiI0JQir-iLQJlTE5CPBKX_5g5UQGIuU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4e64d72551861451bc308551233ef824","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Attempting to finish experiment","requestID":"4e64d72551861451bc308551233ef824"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"3581bf20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.264497,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3581bf20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293608,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwOH0.P_LuzepyK4wuiI0JQir-iLQJlTE5CPBKX_5g5UQGIuU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3581bf20-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948","device":"44b2d816-955d-4a9f-be76-5e506d22782c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"25e664f1-67c7-487b-a6ef-1aa1ed72d025","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":"25e664f1-67c7-487b-a6ef-1aa1ed72d025","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":"25e664f1-67c7-487b-a6ef-1aa1ed72d025","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/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a52f60d5-d3a3-470c-96e6-3c2c3f5a7948","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c9fa2df7229229886fb12248d6fa3cf0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c9fa2df7229229886fb12248d6fa3cf0","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"528a0b64-0dc5-4367-baef-1257061ee0ff","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.4901814} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa52f60d5-d3a3-470c-96e6-3c2c3f5a7948': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa52f60d5-d3a3-470c-96e6-3c2c3f5a7948","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"14624172-9d68-4adc-977e-6f0bea2c5d9f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.4905794} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b87e09b9addddc52a3bcdfc58580da01","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"closed","url":"http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025"},{"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/44b2d816-955d-4a9f-be76-5e506d22782c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948"}}},"level":"info","message":"received a callback","requestID":"c9fa2df7229229886fb12248d6fa3cf0"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b87e09b9addddc52a3bcdfc58580da01","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"3581bf20-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025"},{"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/44b2d816-955d-4a9f-be76-5e506d22782c"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948"}}},"level":"info","message":"received a callback","requestID":"b87e09b9addddc52a3bcdfc58580da01"} device-1 | {"data":{"peerconnection":"a52f60d5-d3a3-470c-96e6-3c2c3f5a7948","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"3581bf20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948 204 40ms","method":"DELETE","requestID":"3581bf20-848f-11ef-9233-95baf63f17e0","responseTime":40,"status":204,"url":"/peerconnections/a52f60d5-d3a3-470c-96e6-3c2c3f5a7948"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"},"level":"info","message":"Successfully finished experiment","requestID":"4e64d72551861451bc308551233ef824"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"358a4aa0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F25e664f1-67c7-487b-a6ef-1aa1ed72d025","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"24fa1cf2-0ce2-40f7-8697-41c0113a109c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.5264096} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.20283,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"358a4aa0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025","object_type":"device","rebac_allow":false,"scope_allow":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":"358a4aa0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"358a4aa0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025/signaling 200 8ms","method":"POST","requestID":"358a4aa0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/25e664f1-67c7-487b-a6ef-1aa1ed72d025/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"358bd140-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F88c3bf7f-f021-496a-befa-adebea7a3a9f': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F88c3bf7f-f021-496a-befa-adebea7a3a9f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"cc830508-667d-43a1-b538-e4470b3846dd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.5331755} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"88b5e149-cb2e-4361-bb95-dbeb56f2d1c8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.533479} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"4e64d72551861451bc308551233ef824","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F44b2d816-955d-4a9f-be76-5e506d22782c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1bca70af-27e1-456b-aae5-65dac2827f41","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.5388167} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.276542,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"358bd140-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/44b2d816-955d-4a9f-be76-5e506d22782c","object_type":"device","rebac_allow":false,"scope_allow":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":"358bd140-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"358bd140-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/44b2d816-955d-4a9f-be76-5e506d22782c/signaling 200 11ms","method":"POST","requestID":"358bd140-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/44b2d816-955d-4a9f-be76-5e506d22782c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f","requestID":"4e64d72551861451bc308551233ef824"} gateway-1 | {"time_local":"07/Oct/2024:09:33:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.206","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4e64d72551861451bc308551233ef824"} gateway-1 | {"time_local":"07/Oct/2024:09:33:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3316","request_time":"4.500","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"5b80846b437a151597997e44ec4df99c"} experiment-1 | {"level":"info","message":"DELETE /experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f 204 202ms","method":"DELETE","requestID":"4e64d72551861451bc308551233ef824","responseTime":202,"status":204,"url":"/experiments/88c3bf7f-f021-496a-befa-adebea7a3a9f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 164ms","method":"POST","requestID":"c9fa2df7229229886fb12248d6fa3cf0","responseTime":164,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.167","http_referrer":"","http_user_agent":"node-fetch","requestID":"c9fa2df7229229886fb12248d6fa3cf0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 165ms","method":"POST","requestID":"b87e09b9addddc52a3bcdfc58580da01","responseTime":165,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.169","http_referrer":"","http_user_agent":"node-fetch","requestID":"b87e09b9addddc52a3bcdfc58580da01"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwOH0.P_LuzepyK4wuiI0JQir-iLQJlTE5CPBKX_5g5UQGIuU","level":"info","message":"auth send jwt","requestID":"d81925054778298618ba374e6ecc18aa"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d81925054778298618ba374e6ecc18aa","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d81925054778298618ba374e6ecc18aa"} gateway-1 | {"time_local":"07/Oct/2024:09:33:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2457","request_time":"3.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":"d1e67196214f311cfaaef9493fa29aba"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.019672,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d81925054778298618ba374e6ecc18aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293608,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwOH0.P_LuzepyK4wuiI0JQir-iLQJlTE5CPBKX_5g5UQGIuU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d81925054778298618ba374e6ecc18aa","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/25e664f1-67c7-487b-a6ef-1aa1ed72d025' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0c2c4515-50d7-4f3f-9a35-77689b3e66d7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.6818137} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d81925054778298618ba374e6ecc18aa","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/44b2d816-955d-4a9f-be76-5e506d22782c' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"81c56c73-f61c-4443-b7d7-c081db782a54","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.687329} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d81925054778298618ba374e6ecc18aa","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"b9402c15-3f12-4feb-a68f-42559c730548","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.6985207} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a6e21dc-e440-427d-8460-61e10849c821","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.6986225} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"d81925054778298618ba374e6ecc18aa","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.698493912Z"}]},"request_id":"ed06248b-d63f-4e2a-b90d-b782f4f065d1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.7030978} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d81925054778298618ba374e6ecc18aa","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d81925054778298618ba374e6ecc18aa"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d81925054778298618ba374e6ecc18aa"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"d81925054778298618ba374e6ecc18aa","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwOH0.P_LuzepyK4wuiI0JQir-iLQJlTE5CPBKX_5g5UQGIuU","level":"info","message":"auth send jwt","requestID":"d468182d69c0d42e595a500388c2cdba"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d468182d69c0d42e595a500388c2cdba","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d468182d69c0d42e595a500388c2cdba"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.746445,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d468182d69c0d42e595a500388c2cdba","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293608,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwOH0.P_LuzepyK4wuiI0JQir-iLQJlTE5CPBKX_5g5UQGIuU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d468182d69c0d42e595a500388c2cdba","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"963b8299-a911-407b-8a37-be60357a0ea4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.7338274} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d468182d69c0d42e595a500388c2cdba","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"55432f1d-14a7-4827-87ac-0c96499cb6ae","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.7382512} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d468182d69c0d42e595a500388c2cdba","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"58dcd367-2e65-4424-bf6c-0520e12a9921","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.7491052} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"58eb8a22-b750-4ed0-878b-f06abbd2ab20","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.749502} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"d468182d69c0d42e595a500388c2cdba","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.749072112Z"}]},"request_id":"26b6fc53-2f7e-40a2-93f0-0ea28264c7cf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293608.7540746} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d468182d69c0d42e595a500388c2cdba","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d468182d69c0d42e595a500388c2cdba"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"d468182d69c0d42e595a500388c2cdba","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:28 +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":"d468182d69c0d42e595a500388c2cdba"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwOX0.UAgxcV8o6GapFv2mtoMQe9FdjuxlwXdgLtktngEe9S4","level":"info","message":"auth send jwt","requestID":"caa0c9304f1c50943c03e374bc4e8dd7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"caa0c9304f1c50943c03e374bc4e8dd7","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"caa0c9304f1c50943c03e374bc4e8dd7"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.176132,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"caa0c9304f1c50943c03e374bc4e8dd7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293609,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwOX0.UAgxcV8o6GapFv2mtoMQe9FdjuxlwXdgLtktngEe9S4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"caa0c9304f1c50943c03e374bc4e8dd7","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.698493912Z"}]},"request_id":"7b9c2f41-126a-4103-ae15-a2a3afeaef29","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293609.2355537} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"caa0c9304f1c50943c03e374bc4e8dd7","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c68071d-da6d-4583-90a2-32f3428580fd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293609.2410352} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"caa0c9304f1c50943c03e374bc4e8dd7","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.698493912Z"}]},"request_id":"0396acd6-38de-432a-8a99-68779e56207a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293609.254351} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"caa0c9304f1c50943c03e374bc4e8dd7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"caa0c9304f1c50943c03e374bc4e8dd7"} gateway-1 | {"time_local":"07/Oct/2024:09:33:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"caa0c9304f1c50943c03e374bc4e8dd7"} device-1 | {"level":"info","message":"PATCH /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d 200 34ms","method":"PATCH","requestID":"caa0c9304f1c50943c03e374bc4e8dd7","responseTime":34,"status":200,"url":"/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwOX0.UAgxcV8o6GapFv2mtoMQe9FdjuxlwXdgLtktngEe9S4","level":"info","message":"auth send jwt","requestID":"2d8e0a9cc51149e8f351cad5aa028155"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2d8e0a9cc51149e8f351cad5aa028155","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2d8e0a9cc51149e8f351cad5aa028155"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.19054,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2d8e0a9cc51149e8f351cad5aa028155","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293609,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYwOX0.UAgxcV8o6GapFv2mtoMQe9FdjuxlwXdgLtktngEe9S4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2d8e0a9cc51149e8f351cad5aa028155","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2d8e0a9cc51149e8f351cad5aa028155"} device-1 | {"level":"info","message":"POST /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d/websocket 200 23ms","method":"POST","requestID":"2d8e0a9cc51149e8f351cad5aa028155","responseTime":23,"status":200,"url":"/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:33:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d/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.9","requestID":"2d8e0a9cc51149e8f351cad5aa028155"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"54403d0a8f2e24e357c57175ccbb184b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"54403d0a8f2e24e357c57175ccbb184b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/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":"54403d0a8f2e24e357c57175ccbb184b"} device-1 | {"level":"info","message":"OPTIONS /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/websocket 200 1ms","method":"OPTIONS","requestID":"54403d0a8f2e24e357c57175ccbb184b","responseTime":1,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU","level":"info","message":"auth send jwt","requestID":"da481660f13942f5dcbb8715e51c3e43"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"da481660f13942f5dcbb8715e51c3e43","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"da481660f13942f5dcbb8715e51c3e43"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.233391,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"da481660f13942f5dcbb8715e51c3e43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293610,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"da481660f13942f5dcbb8715e51c3e43","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"da481660f13942f5dcbb8715e51c3e43"} gateway-1 | {"time_local":"07/Oct/2024:09:33:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/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":"da481660f13942f5dcbb8715e51c3e43"} device-1 | {"level":"info","message":"POST /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/websocket 200 23ms","method":"POST","requestID":"da481660f13942f5dcbb8715e51c3e43","responseTime":23,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4c456e2b51b915e158c0f91266c9dd1a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"4c456e2b51b915e158c0f91266c9dd1a","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5? 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":"4c456e2b51b915e158c0f91266c9dd1a"} device-1 | {"level":"info","message":"OPTIONS /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5? 200 1ms","method":"OPTIONS","requestID":"4c456e2b51b915e158c0f91266c9dd1a","responseTime":1,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU","level":"info","message":"auth send jwt","requestID":"e35835470f1d99c45bda386c91eaf496"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e35835470f1d99c45bda386c91eaf496","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e35835470f1d99c45bda386c91eaf496"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.250555,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e35835470f1d99c45bda386c91eaf496","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293610,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e35835470f1d99c45bda386c91eaf496","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.749072112Z"}]},"request_id":"41b5d65b-13c1-4765-b0f7-525bb4dc001d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293610.868958} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e35835470f1d99c45bda386c91eaf496","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1810c50d-e017-4802-ac65-83498c3c1609","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293610.8767629} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e35835470f1d99c45bda386c91eaf496","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.749072112Z"}]},"request_id":"3550af34-fc24-40eb-bea7-abe54e51b0de","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293610.8906252} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e35835470f1d99c45bda386c91eaf496","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e35835470f1d99c45bda386c91eaf496"} gateway-1 | {"time_local":"07/Oct/2024:09:33:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5? 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":"e35835470f1d99c45bda386c91eaf496"} device-1 | {"level":"info","message":"PATCH /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5? 200 41ms","method":"PATCH","requestID":"e35835470f1d99c45bda386c91eaf496","responseTime":41,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU","level":"info","message":"auth send jwt","requestID":"4d3b76962ed17d25a32f19ce094b4b60"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4d3b76962ed17d25a32f19ce094b4b60","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4d3b76962ed17d25a32f19ce094b4b60"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.152167,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4d3b76962ed17d25a32f19ce094b4b60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293610,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4d3b76962ed17d25a32f19ce094b4b60","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.698493912Z"}]},"request_id":"703cca2f-082f-4d22-8c46-9f02f52e8796","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293610.9237952} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4d3b76962ed17d25a32f19ce094b4b60","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4d3b76962ed17d25a32f19ce094b4b60"} gateway-1 | {"time_local":"07/Oct/2024:09:33:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d? 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":"4d3b76962ed17d25a32f19ce094b4b60"} device-1 | {"level":"info","message":"GET /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d? 200 20ms","method":"GET","requestID":"4d3b76962ed17d25a32f19ce094b4b60","responseTime":20,"status":200,"url":"/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU","level":"info","message":"auth send jwt","requestID":"f152aff09d548007ef596ca5e2b6bad0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f152aff09d548007ef596ca5e2b6bad0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f152aff09d548007ef596ca5e2b6bad0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.682089,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f152aff09d548007ef596ca5e2b6bad0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293610,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f152aff09d548007ef596ca5e2b6bad0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.749072112Z"}]},"request_id":"684d28ad-8277-45a7-ba6b-dca1b32ee124","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293610.9528146} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f152aff09d548007ef596ca5e2b6bad0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f152aff09d548007ef596ca5e2b6bad0"} gateway-1 | {"time_local":"07/Oct/2024:09:33:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5? 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":"f152aff09d548007ef596ca5e2b6bad0"} device-1 | {"level":"info","message":"GET /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5? 200 19ms","method":"GET","requestID":"f152aff09d548007ef596ca5e2b6bad0","responseTime":19,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU","level":"info","message":"auth send jwt","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9e161b80a644899fbf1e8be7ec286cc3","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.143271,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9e161b80a644899fbf1e8be7ec286cc3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293610,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9e161b80a644899fbf1e8be7ec286cc3","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Attempting to run experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Attempting to book experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Successfully booked experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"37068a60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3706b170-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.280019,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"37068a60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293610,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"37068a60-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Received request.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Sent response.","req_id":431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.998839,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3706b170-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293610,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3706b170-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.698493912Z"}]},"request_id":"1e82f707-474f-4fab-98bb-54895dbc2bec","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.0231736} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"37068a60-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.749072112Z"}]},"request_id":"70161898-7f66-4a82-b961-aaa1922ee770","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.026756} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3706b170-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"37068a60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d? 200 15ms","method":"GET","requestID":"37068a60-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3706b170-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5? 200 16ms","method":"GET","requestID":"3706b170-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Setting up experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Successfully locked booking for experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Attempting to update booking for experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Successfully updated booking for experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Successfully set up experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3710eaa0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"371138c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Successfully running experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3711d500-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.393887,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Received request.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3710eaa0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293610,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3710eaa0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Sent response.","req_id":433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.945976,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"371138c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293610,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"371138c0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.749072112Z"}]},"request_id":"edc94425-83bd-44dc-ae54-497056f3b3d1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.0994709} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"446a7c26-b1be-4bb3-8d1c-2f90acae7b95","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.0998583} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"371138c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.698493912Z"}]},"request_id":"df0c81cc-4947-4e27-a480-d9e3bb620b70","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.1008513} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.044161,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3711d500-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","object_type":"device","rebac_allow":false,"scope_allow":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":"3711d500-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3710eaa0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Feddb16a8-a757-4c38-bfbc-dbf6caf84553#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Feddb16a8-a757-4c38-bfbc-dbf6caf84553","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"6b4a9aae-f256-4823-93fb-b6cad1981908","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.113195} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d51a5b6-472d-41ef-9d49-0f679e44061f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.1137333} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"9e161b80a644899fbf1e8be7ec286cc3","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"371138c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5? 200 35ms","method":"GET","requestID":"371138c0-848f-11ef-9233-95baf63f17e0","responseTime":35,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3711d500-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d/signaling 200 32ms","method":"POST","requestID":"3711d500-848f-11ef-9233-95baf63f17e0","responseTime":32,"status":200,"url":"/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3710eaa0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d? 200 40ms","method":"GET","requestID":"3710eaa0-848f-11ef-9233-95baf63f17e0","responseTime":40,"status":200,"url":"/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3717a160-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3717ef80-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} gateway-1 | {"time_local":"07/Oct/2024:09:33:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} experiment-1 | {"level":"info","message":"POST /experiments? 201 162ms","method":"POST","requestID":"9e161b80a644899fbf1e8be7ec286cc3","responseTime":162,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bcee775f-14f3-41d8-bbc5-2ffc1521707f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.1323512} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Received request.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.320626,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3717a160-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","object_type":"device","rebac_allow":false,"scope_allow":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":"3717a160-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad338a16-5015-45bc-be02-bad3b4369524","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.1352649} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Sent response.","req_id":436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.690823,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMX0.fmGrg3T-P4S8hYC_--L8sVlzrocPOZAwj7YfGj06zm4","level":"info","message":"auth send jwt","requestID":"e00f867e6574a84143fb66a608a6701a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3717ef80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","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 4ms","method":"GET","requestID":"e00f867e6574a84143fb66a608a6701a","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3717ef80-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3717a160-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/signaling 200 12ms","method":"POST","requestID":"3717a160-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e00f867e6574a84143fb66a608a6701a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3717ef80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d/signaling 200 15ms","method":"POST","requestID":"3717ef80-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.109988,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e00f867e6574a84143fb66a608a6701a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293611,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMX0.fmGrg3T-P4S8hYC_--L8sVlzrocPOZAwj7YfGj06zm4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"371aaea0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e00f867e6574a84143fb66a608a6701a","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"214233d4-0589-4ee4-a74b-cc194a0af686","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.1510715} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.698493912Z"}]},"request_id":"a8516cd2-c9ce-4547-8c31-7a719163e2b0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.1512516} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e00f867e6574a84143fb66a608a6701a","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.586602,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"371aaea0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","object_type":"device","rebac_allow":false,"scope_allow":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":"371aaea0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e00f867e6574a84143fb66a608a6701a"} gateway-1 | {"time_local":"07/Oct/2024:09:33:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d? 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":"e00f867e6574a84143fb66a608a6701a"} device-1 | {"level":"info","message":"GET /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d? 200 17ms","method":"GET","requestID":"e00f867e6574a84143fb66a608a6701a","responseTime":17,"status":200,"url":"/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"371aaea0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/signaling 200 12ms","method":"POST","requestID":"371aaea0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"371cf890-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"371d1fa0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMX0.fmGrg3T-P4S8hYC_--L8sVlzrocPOZAwj7YfGj06zm4","level":"info","message":"auth send jwt","requestID":"20ff3ddaed2badc084e5189005cec3be"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20ff3ddaed2badc084e5189005cec3be"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"20ff3ddaed2badc084e5189005cec3be","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.986122,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"371cf890-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293610,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"371cf890-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Received request.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Sent response.","req_id":440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.839385,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"371d1fa0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293610,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"371d1fa0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.698493912Z"}]},"request_id":"80fe55cf-7c6a-44cd-bdc2-25143d44aead","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.1713476} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.749072112Z"}]},"request_id":"4aeeb91e-402d-41ee-8fac-4a3767d17313","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.172736} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"371cf890-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:39260","level":"info","msg":"Received request.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"client_addr":"127.0.0.1:39260","level":"info","msg":"Sent response.","req_id":441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.853631,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"371d1fa0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"20ff3ddaed2badc084e5189005cec3be","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293611,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMX0.fmGrg3T-P4S8hYC_--L8sVlzrocPOZAwj7YfGj06zm4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"20ff3ddaed2badc084e5189005cec3be","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"371cf890-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:28.749072112Z"}]},"request_id":"eebf5a8c-5354-483e-bae4-d6d0496501f6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.1784778} device-1 | {"level":"info","message":"GET /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d? 200 17ms","method":"GET","requestID":"371cf890-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"371d1fa0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"20ff3ddaed2badc084e5189005cec3be","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5? 200 17ms","method":"GET","requestID":"371d1fa0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Building connection plan","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"1f4c964b-869f-4a1f-b288-24f427758951"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"35bcbd88-827c-4d5c-b67c-518501c75587"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"b75f89b9-2aad-4dee-a873-e34653504c8c"}]},"level":"info","message":"Built pairwise service configurations","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} 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/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d"},{"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/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20ff3ddaed2badc084e5189005cec3be"} gateway-1 | {"time_local":"07/Oct/2024:09:33:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5? 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":"20ff3ddaed2badc084e5189005cec3be"} device-1 | {"level":"info","message":"GET /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5? 200 17ms","method":"GET","requestID":"20ff3ddaed2badc084e5189005cec3be","responseTime":17,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"37202ce0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.805544,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"37202ce0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293610,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxMH0.aKJlZAgFwX9HWrI-aKwMWBg6xW8I_94Slciw1gXDUzU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"37202ce0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"a4750748-96c6-4a6b-8260-bd057e78fb64","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.193014} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc6f75ee-9d10-45b7-9fe2-233239ada119","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.1931415} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"37202ce0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"37202ce0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"37202ce0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa'","requestID":"37202ce0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa'","requestID":"37202ce0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"37202ce0-848f-11ef-9233-95baf63f17e0"} 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":"37202ce0-848f-11ef-9233-95baf63f17e0","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":"37202ce0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"9e161b80a644899fbf1e8be7ec286cc3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"372954a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"device":"b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"682dd9ff-5ca7-459d-8eee-480c66d2aa68","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.2478392} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.700508,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"372954a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"372954a0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"content":{"sdp":"v=0\r\no=- 1953016534664836370 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:Rxi+\r\na=ice-pwd:fswo3Lo69SBY9G29W6u70xC5\r\na=ice-options:trickle\r\na=fingerprint:sha-256 61:CB:BE:8C:2F:59:B7:65:28:9A:8D:95:89:25:55:1C:B6:66:46:66:06:83:85:1F:68:AB:2A:D4:18:AD:9E:57\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"372954a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d/signaling 200 14ms","method":"POST","requestID":"372954a0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"372bc5a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"37aa0e97-007a-41ba-9faf-38c1bd426bea","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293611.2621381} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.021884,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:31Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"372bc5a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","object_type":"device","rebac_allow":false,"scope_allow":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":"372bc5a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"372bc5a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/signaling 200 8ms","method":"POST","requestID":"372bc5a0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/signaling"} device-1 | {"device":"b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","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":"984357e6-8872-45ca-b46e-dfb63790e7aa","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","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":"3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","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":"3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","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":"3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","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/984357e6-8872-45ca-b46e-dfb63790e7aa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"984357e6-8872-45ca-b46e-dfb63790e7aa","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0208c8049b4ff76693dcf1d581ff65b0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"0208c8049b4ff76693dcf1d581ff65b0","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/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d"},{"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/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa"}}},"level":"info","message":"received a callback","requestID":"0208c8049b4ff76693dcf1d581ff65b0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"0208c8049b4ff76693dcf1d581ff65b0","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"0208c8049b4ff76693dcf1d581ff65b0"} device-1 | {"content":{"candidate":"candidate:2594977676 1 udp 2113937151 552c034b-2ddc-4ff0-ba9b-f5c8325d625c.local 43552 typ host generation 0 ufrag Rxi+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3102914817 1 udp 1677729535 141.24.211.56 43552 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Rxi+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2673433459 1 udp 33562623 141.24.210.113 49375 typ relay raddr 141.24.211.56 rport 43552 generation 0 ufrag Rxi+ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","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/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5'"} device-1 | {"data":{"peerconnection":"984357e6-8872-45ca-b46e-dfb63790e7aa","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","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":"b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"984357e6-8872-45ca-b46e-dfb63790e7aa","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","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 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"984357e6-8872-45ca-b46e-dfb63790e7aa","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9ebf764787d587b7a2252d841afa2f1d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"9ebf764787d587b7a2252d841afa2f1d","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d"},{"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/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa"}}},"level":"info","message":"received a callback","requestID":"9ebf764787d587b7a2252d841afa2f1d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"386f1b10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F984357e6-8872-45ca-b46e-dfb63790e7aa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"97096042-d1fc-4f87-9644-268cec2e6add","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.3846316} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.865522,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"386f1b10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa","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":"386f1b10-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"386f1b10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa 200 12ms","method":"GET","requestID":"386f1b10-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 38ms","method":"POST","requestID":"9ebf764787d587b7a2252d841afa2f1d","responseTime":38,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.043","http_referrer":"","http_user_agent":"node-fetch","requestID":"9ebf764787d587b7a2252d841afa2f1d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3873aef0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0938aec-3058-4cea-b899-e3778691adee","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.4126856} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.492188,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3873aef0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3873aef0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3873aef0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d/signaling 200 11ms","method":"POST","requestID":"3873aef0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3875aac0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a35164f-e725-4288-be8e-35d173a13e0f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.4249575} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.513971,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3875aac0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","object_type":"device","rebac_allow":false,"scope_allow":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":"3875aac0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3875aac0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/signaling 200 11ms","method":"POST","requestID":"3875aac0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxM30.KuJYpN7qPIto0FPvCseod4febTLz5_5z8nKzwdxiG-c","level":"info","message":"auth send jwt","requestID":"925cc47ec60d9a7b973047d247edd9a7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"925cc47ec60d9a7b973047d247edd9a7","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553","requestID":"925cc47ec60d9a7b973047d247edd9a7"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.137269,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"925cc47ec60d9a7b973047d247edd9a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293613,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxM30.KuJYpN7qPIto0FPvCseod4febTLz5_5z8nKzwdxiG-c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"925cc47ec60d9a7b973047d247edd9a7","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553","requestID":"925cc47ec60d9a7b973047d247edd9a7"} gateway-1 | {"time_local":"07/Oct/2024:09:33:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553 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":"925cc47ec60d9a7b973047d247edd9a7"} experiment-1 | {"level":"info","message":"GET /experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553 200 16ms","method":"GET","requestID":"925cc47ec60d9a7b973047d247edd9a7","responseTime":16,"status":200,"url":"/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxM30.KuJYpN7qPIto0FPvCseod4febTLz5_5z8nKzwdxiG-c","level":"info","message":"auth send jwt","requestID":"aa8e3ce30d8f5f0145f85aef70f11e6c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aa8e3ce30d8f5f0145f85aef70f11e6c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553","requestID":"aa8e3ce30d8f5f0145f85aef70f11e6c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.245679,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"aa8e3ce30d8f5f0145f85aef70f11e6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293613,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxM30.KuJYpN7qPIto0FPvCseod4febTLz5_5z8nKzwdxiG-c"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aa8e3ce30d8f5f0145f85aef70f11e6c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Attempting to finish experiment","requestID":"aa8e3ce30d8f5f0145f85aef70f11e6c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"3893e120-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.262494,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3893e120-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293613,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxM30.KuJYpN7qPIto0FPvCseod4febTLz5_5z8nKzwdxiG-c"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3893e120-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa","device":"b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","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":"3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","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":"3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","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/984357e6-8872-45ca-b46e-dfb63790e7aa' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"984357e6-8872-45ca-b46e-dfb63790e7aa","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F984357e6-8872-45ca-b46e-dfb63790e7aa': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F984357e6-8872-45ca-b46e-dfb63790e7aa","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"6d5541ed-3330-46b6-b23a-61dad71a92e8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.643887} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"578c0f0b-7e58-493b-a6d0-fbacc9424525","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.6443431} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fd6d8338078f730b84c723e2b19ecd43","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fd6d8338078f730b84c723e2b19ecd43","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"3893e120-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"deab3ba9c55b58c144b39470bc5a3132","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"consumer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d"},{"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/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa"}}},"level":"info","message":"received a callback","requestID":"fd6d8338078f730b84c723e2b19ecd43"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"deab3ba9c55b58c144b39470bc5a3132","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":["webrtc"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"closed","url":"http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d"},{"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/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa"}}},"level":"info","message":"received a callback","requestID":"deab3ba9c55b58c144b39470bc5a3132"} device-1 | {"data":{"peerconnection":"984357e6-8872-45ca-b46e-dfb63790e7aa","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"3893e120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa 204 51ms","method":"DELETE","requestID":"3893e120-848f-11ef-9233-95baf63f17e0","responseTime":51,"status":204,"url":"/peerconnections/984357e6-8872-45ca-b46e-dfb63790e7aa"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"},"level":"info","message":"Successfully finished experiment","requestID":"aa8e3ce30d8f5f0145f85aef70f11e6c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"389f04b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5bd1c679-1a3b-4957-8a25-dc7072bdbca7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.6978965} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.921645,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"389f04b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d","object_type":"device","rebac_allow":false,"scope_allow":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":"389f04b0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"389f04b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d/signaling 200 13ms","method":"POST","requestID":"389f04b0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Feddb16a8-a757-4c38-bfbc-dbf6caf84553': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Feddb16a8-a757-4c38-bfbc-dbf6caf84553","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"730e8965-9b83-496a-b8f9-c6035de10f8b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.7045557} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba5109bc-947f-4a0a-95fa-3d5eec55a538","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.7049513} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"aa8e3ce30d8f5f0145f85aef70f11e6c","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"38a175b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb07a8cf3-2fdd-487a-9d19-5359a1dc62b5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"150996f6-14a2-4bad-a2e2-5249bdf1f655","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.712011} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.54389,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"38a175b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5","object_type":"device","rebac_allow":false,"scope_allow":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":"38a175b0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"38a175b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/signaling 200 10ms","method":"POST","requestID":"38a175b0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553","requestID":"aa8e3ce30d8f5f0145f85aef70f11e6c"} gateway-1 | {"time_local":"07/Oct/2024:09:33:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553 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":"aa8e3ce30d8f5f0145f85aef70f11e6c"} experiment-1 | {"level":"info","message":"DELETE /experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553 204 171ms","method":"DELETE","requestID":"aa8e3ce30d8f5f0145f85aef70f11e6c","responseTime":171,"status":204,"url":"/experiments/eddb16a8-a757-4c38-bfbc-dbf6caf84553"} gateway-1 | {"time_local":"07/Oct/2024:09:33:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3318","request_time":"4.485","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"e4578ed0e30b93b4a3f47fc334b9f327"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"fd6d8338078f730b84c723e2b19ecd43","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"fd6d8338078f730b84c723e2b19ecd43"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"deab3ba9c55b58c144b39470bc5a3132","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"deab3ba9c55b58c144b39470bc5a3132"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxM30.KuJYpN7qPIto0FPvCseod4febTLz5_5z8nKzwdxiG-c","level":"info","message":"auth send jwt","requestID":"2df12cc0a92b4c896654b9f8d75ba0d6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2df12cc0a92b4c896654b9f8d75ba0d6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2df12cc0a92b4c896654b9f8d75ba0d6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:33Z"} gateway-1 | {"time_local":"07/Oct/2024:09:33:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"2457","request_time":"2.978","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"330926d2e17bb1f1dc3fde85171b1ab7"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.967157,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2df12cc0a92b4c896654b9f8d75ba0d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293613,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxM30.KuJYpN7qPIto0FPvCseod4febTLz5_5z8nKzwdxiG-c"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2df12cc0a92b4c896654b9f8d75ba0d6","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/3aea100d-d3c7-42a8-9ec3-7ebe0074ef1d' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"77e3dbce-a014-4638-8b2e-c0ac3208c4f3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.80643} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2df12cc0a92b4c896654b9f8d75ba0d6","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/b07a8cf3-2fdd-487a-9d19-5359a1dc62b5' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f3f70c49-d0c9-4e06-a9e4-7af20f4cd71d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.812593} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2df12cc0a92b4c896654b9f8d75ba0d6","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"309da317-b893-467a-8eaa-f65188d4de47","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.8280525} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"00bdd8c0-ae75-4b17-9220-50eff2715aa1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.8283143} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"2df12cc0a92b4c896654b9f8d75ba0d6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.828021221Z"}]},"request_id":"5268b51a-fe98-43c4-8439-2afba3641f91","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.8337646} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2df12cc0a92b4c896654b9f8d75ba0d6","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2df12cc0a92b4c896654b9f8d75ba0d6"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"2df12cc0a92b4c896654b9f8d75ba0d6","responseTime":52,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.059","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2df12cc0a92b4c896654b9f8d75ba0d6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxM30.KuJYpN7qPIto0FPvCseod4febTLz5_5z8nKzwdxiG-c","level":"info","message":"auth send jwt","requestID":"6beb6b7e954ca9777e236ac0b45faa99"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6beb6b7e954ca9777e236ac0b45faa99","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6beb6b7e954ca9777e236ac0b45faa99"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.726499,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6beb6b7e954ca9777e236ac0b45faa99","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293613,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxM30.KuJYpN7qPIto0FPvCseod4febTLz5_5z8nKzwdxiG-c"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6beb6b7e954ca9777e236ac0b45faa99","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"da9a9e32-9cfd-4ebc-b42e-a88f5ab8794d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.85997} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6beb6b7e954ca9777e236ac0b45faa99","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0d413760-7299-49c5-8179-e05af7401fc7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.8643215} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6beb6b7e954ca9777e236ac0b45faa99","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"c7496f4c-55ea-4801-b0f5-ecdd97864bb6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.8751986} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dd91cd35-a320-476b-b684-dfb4deebd44f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.8754046} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"6beb6b7e954ca9777e236ac0b45faa99","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.875177780Z"}]},"request_id":"d4bbedc2-31a1-456b-acbe-ec2457628c9c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293613.879315} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6beb6b7e954ca9777e236ac0b45faa99","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6beb6b7e954ca9777e236ac0b45faa99"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6beb6b7e954ca9777e236ac0b45faa99"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"6beb6b7e954ca9777e236ac0b45faa99","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18","level":"info","message":"auth send jwt","requestID":"49d5be29bc5f3357022466bd7345c88c"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"49d5be29bc5f3357022466bd7345c88c","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18","level":"info","message":"auth send jwt","requestID":"8563cf7c285a97c41ac7acaa1bb37a1f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"8563cf7c285a97c41ac7acaa1bb37a1f","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"49d5be29bc5f3357022466bd7345c88c"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8563cf7c285a97c41ac7acaa1bb37a1f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.07715,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"49d5be29bc5f3357022466bd7345c88c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"49d5be29bc5f3357022466bd7345c88c","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Received request.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Sent response.","req_id":456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.559545,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8563cf7c285a97c41ac7acaa1bb37a1f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8563cf7c285a97c41ac7acaa1bb37a1f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.828021221Z"}]},"request_id":"2ec4eb96-5ec7-4f31-9eda-65befad2b0bd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.3693225} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"49d5be29bc5f3357022466bd7345c88c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.875177780Z"}]},"request_id":"2f06b3ef-8b60-4a7b-997e-a91f670637c1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.370314} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8563cf7c285a97c41ac7acaa1bb37a1f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b405ca02-c779-4fe1-8953-7923e0ac34c8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.3750448} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"49d5be29bc5f3357022466bd7345c88c","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"efe61f6e-31b6-418c-9057-f83c26b495cd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.3768246} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8563cf7c285a97c41ac7acaa1bb37a1f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.875177780Z"}]},"request_id":"d54e1694-4322-4fc1-90ac-e2d7f9de9476","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.380963} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8563cf7c285a97c41ac7acaa1bb37a1f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8563cf7c285a97c41ac7acaa1bb37a1f"} device-1 | {"level":"info","message":"PATCH /devices/ba8db16b-ab73-49da-9773-06d7239e50a9 200 26ms","method":"PATCH","requestID":"8563cf7c285a97c41ac7acaa1bb37a1f","responseTime":26,"status":200,"url":"/devices/ba8db16b-ab73-49da-9773-06d7239e50a9"} gateway-1 | {"time_local":"07/Oct/2024:09:33:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ba8db16b-ab73-49da-9773-06d7239e50a9 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"8563cf7c285a97c41ac7acaa1bb37a1f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18","level":"info","message":"auth send jwt","requestID":"a3f2760a2cf7f704d481d1483e8c5907"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a3f2760a2cf7f704d481d1483e8c5907","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a3f2760a2cf7f704d481d1483e8c5907"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.828021221Z"}]},"request_id":"1810ec42-9332-4523-95f6-c8ea19f5c1b5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.3921363} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"49d5be29bc5f3357022466bd7345c88c","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.180287,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"49d5be29bc5f3357022466bd7345c88c"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a3f2760a2cf7f704d481d1483e8c5907","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a3f2760a2cf7f704d481d1483e8c5907","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.049","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"49d5be29bc5f3357022466bd7345c88c"} device-1 | {"level":"info","message":"PATCH /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b 200 39ms","method":"PATCH","requestID":"49d5be29bc5f3357022466bd7345c88c","responseTime":39,"status":200,"url":"/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18","level":"info","message":"auth send jwt","requestID":"137818953b8fa5cde01ea24a1553caff"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"137818953b8fa5cde01ea24a1553caff","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"137818953b8fa5cde01ea24a1553caff"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.112932,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"137818953b8fa5cde01ea24a1553caff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"137818953b8fa5cde01ea24a1553caff","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a3f2760a2cf7f704d481d1483e8c5907"} gateway-1 | {"time_local":"07/Oct/2024:09:33:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ba8db16b-ab73-49da-9773-06d7239e50a9/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.9","requestID":"a3f2760a2cf7f704d481d1483e8c5907"} device-1 | {"level":"info","message":"POST /devices/ba8db16b-ab73-49da-9773-06d7239e50a9/websocket 200 17ms","method":"POST","requestID":"a3f2760a2cf7f704d481d1483e8c5907","responseTime":17,"status":200,"url":"/devices/ba8db16b-ab73-49da-9773-06d7239e50a9/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"137818953b8fa5cde01ea24a1553caff"} gateway-1 | {"time_local":"07/Oct/2024:09:33:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b/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.9","requestID":"137818953b8fa5cde01ea24a1553caff"} device-1 | {"level":"info","message":"POST /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b/websocket 200 18ms","method":"POST","requestID":"137818953b8fa5cde01ea24a1553caff","responseTime":18,"status":200,"url":"/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18","level":"info","message":"auth send jwt","requestID":"178637fc32aa538dcd6a4efd9aadb720"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"178637fc32aa538dcd6a4efd9aadb720","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"178637fc32aa538dcd6a4efd9aadb720"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.098798,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"178637fc32aa538dcd6a4efd9aadb720","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"178637fc32aa538dcd6a4efd9aadb720","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.828021221Z"}]},"request_id":"e74f5478-2514-48a1-a042-7ec1c2fdf8ad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.453527} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"178637fc32aa538dcd6a4efd9aadb720","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"178637fc32aa538dcd6a4efd9aadb720"} device-1 | {"level":"info","message":"GET /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b? 200 14ms","method":"GET","requestID":"178637fc32aa538dcd6a4efd9aadb720","responseTime":14,"status":200,"url":"/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b? 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":"178637fc32aa538dcd6a4efd9aadb720"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18","level":"info","message":"auth send jwt","requestID":"4b63a4527faef5ed2fd6495a9724f8f1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4b63a4527faef5ed2fd6495a9724f8f1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4b63a4527faef5ed2fd6495a9724f8f1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.66098,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4b63a4527faef5ed2fd6495a9724f8f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4b63a4527faef5ed2fd6495a9724f8f1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.875177780Z"}]},"request_id":"3e895bbd-f0ce-4123-a12c-aa2bb490f65d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.4738183} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4b63a4527faef5ed2fd6495a9724f8f1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4b63a4527faef5ed2fd6495a9724f8f1"} gateway-1 | {"time_local":"07/Oct/2024:09:33:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ba8db16b-ab73-49da-9773-06d7239e50a9? 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":"4b63a4527faef5ed2fd6495a9724f8f1"} device-1 | {"level":"info","message":"GET /devices/ba8db16b-ab73-49da-9773-06d7239e50a9? 200 13ms","method":"GET","requestID":"4b63a4527faef5ed2fd6495a9724f8f1","responseTime":13,"status":200,"url":"/devices/ba8db16b-ab73-49da-9773-06d7239e50a9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18","level":"info","message":"auth send jwt","requestID":"b481a9a7d651dbc0363b858142b9dd07"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b481a9a7d651dbc0363b858142b9dd07","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"b481a9a7d651dbc0363b858142b9dd07"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.011087,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b481a9a7d651dbc0363b858142b9dd07","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b481a9a7d651dbc0363b858142b9dd07","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Attempting to run experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Attempting to book experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Successfully booked experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"391d3560-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"391d8380-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.905785,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Received request.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"391d3560-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"391d3560-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Sent response.","req_id":463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.891713,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"391d8380-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"391d8380-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.828021221Z"}]},"request_id":"1fa9f105-71c3-47f2-9eeb-9e5b83b814f3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.5282044} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"391d3560-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.875177780Z"}]},"request_id":"e2ee1abc-777b-4009-9632-81d32c98b155","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.5291145} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"391d8380-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"391d3560-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b? 200 15ms","method":"GET","requestID":"391d3560-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"391d8380-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ba8db16b-ab73-49da-9773-06d7239e50a9? 200 14ms","method":"GET","requestID":"391d8380-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/ba8db16b-ab73-49da-9773-06d7239e50a9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Setting up experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Successfully locked booking for experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Attempting to update booking for experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Successfully updated booking for experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Successfully set up experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3926d250-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"39274780-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3927bcb0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.81619,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Received request.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Successfully running experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3926d250-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3926d250-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Sent response.","req_id":465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.141193,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"39274780-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"39274780-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5b8df988-256e-4ff2-8114-df45284fe4dd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.5964706} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.49941,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3927bcb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","object_type":"device","rebac_allow":false,"scope_allow":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":"3927bcb0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.875177780Z"}]},"request_id":"14d08b25-bd18-46fe-9689-2322553be381","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.5994897} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"39274780-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.828021221Z"}]},"request_id":"4b385399-2387-4f55-aae5-176a2a013e2a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.6036434} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3926d250-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3927bcb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b/signaling 200 19ms","method":"POST","requestID":"3927bcb0-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"392b8d40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F481f2291-695a-4090-bebe-dcf5a005feb9#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F481f2291-695a-4090-bebe-dcf5a005feb9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"225867c6-dec1-4755-8e8c-54a61025a1e4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.6130822} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"93c40cba-daf5-4c4c-a19c-b9c8aa0326b8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.6133165} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"39274780-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ba8db16b-ab73-49da-9773-06d7239e50a9? 200 31ms","method":"GET","requestID":"39274780-848f-11ef-9233-95baf63f17e0","responseTime":31,"status":200,"url":"/devices/ba8db16b-ab73-49da-9773-06d7239e50a9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3926d250-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"b481a9a7d651dbc0363b858142b9dd07","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} device-1 | {"level":"info","message":"GET /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b? 200 35ms","method":"GET","requestID":"3926d250-848f-11ef-9233-95baf63f17e0","responseTime":35,"status":200,"url":"/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2785a700-4142-49dd-85e3-651a7c2fa8f1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.6173182} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.132495,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"392b8d40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","object_type":"device","rebac_allow":false,"scope_allow":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":"392b8d40-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"392d8910-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"392b8d40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ba8db16b-ab73-49da-9773-06d7239e50a9/signaling 200 17ms","method":"POST","requestID":"392b8d40-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/ba8db16b-ab73-49da-9773-06d7239e50a9/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"b481a9a7d651dbc0363b858142b9dd07"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"748f0c41-c3f6-4d4c-98a6-540bd6c33933","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.6321104} gateway-1 | {"time_local":"07/Oct/2024:09:33:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"786","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b481a9a7d651dbc0363b858142b9dd07"} experiment-1 | {"level":"info","message":"POST /experiments? 201 148ms","method":"POST","requestID":"b481a9a7d651dbc0363b858142b9dd07","responseTime":148,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.73989,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"392d8910-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","object_type":"device","rebac_allow":false,"scope_allow":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":"392d8910-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"392d8910-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18","level":"info","message":"auth send jwt","requestID":"6fbfc8aebd3718e8a4186ce0c56b03a3"} device-1 | {"level":"info","message":"POST /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b/signaling 200 12ms","method":"POST","requestID":"392d8910-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6fbfc8aebd3718e8a4186ce0c56b03a3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6fbfc8aebd3718e8a4186ce0c56b03a3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"392fd300-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.444821,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Received request.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6fbfc8aebd3718e8a4186ce0c56b03a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6fbfc8aebd3718e8a4186ce0c56b03a3","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"627ae30c-e93b-446f-8e8d-18c4d03fe96f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.6456397} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Sent response.","req_id":470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.00562,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"392fd300-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"392fd300-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.828021221Z"}]},"request_id":"abc3f150-174f-415d-8074-ee04cba6adad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.6490426} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6fbfc8aebd3718e8a4186ce0c56b03a3","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"392fd300-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ba8db16b-ab73-49da-9773-06d7239e50a9/signaling 200 10ms","method":"POST","requestID":"392fd300-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/ba8db16b-ab73-49da-9773-06d7239e50a9/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3931a7c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3931f5e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6fbfc8aebd3718e8a4186ce0c56b03a3"} gateway-1 | {"time_local":"07/Oct/2024:09:33:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b? 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":"6fbfc8aebd3718e8a4186ce0c56b03a3"} device-1 | {"level":"info","message":"GET /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b? 200 17ms","method":"GET","requestID":"6fbfc8aebd3718e8a4186ce0c56b03a3","responseTime":17,"status":200,"url":"/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.748111,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Received request.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3931a7c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3931a7c0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39256","level":"info","msg":"Sent response.","req_id":472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.595977,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3931f5e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3931f5e0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18","level":"info","message":"auth send jwt","requestID":"f3b83b9585d26395e2d44ca316e62cae"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f3b83b9585d26395e2d44ca316e62cae","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f3b83b9585d26395e2d44ca316e62cae"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.828021221Z"}]},"request_id":"272300ac-fc0c-444c-8294-6c22af5e6dbf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.6604252} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3931a7c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.875177780Z"}]},"request_id":"596bcc67-d3f4-46fa-a691-dc49b13bf8c3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.661406} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3931f5e0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.961999,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f3b83b9585d26395e2d44ca316e62cae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f3b83b9585d26395e2d44ca316e62cae","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3931a7c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b? 200 13ms","method":"GET","requestID":"3931a7c0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3931f5e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ba8db16b-ab73-49da-9773-06d7239e50a9? 200 14ms","method":"GET","requestID":"3931f5e0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/ba8db16b-ab73-49da-9773-06d7239e50a9?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:33.875177780Z"}]},"request_id":"c54102a6-66bf-4082-8064-2999ae45442e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.668982} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Building connection plan","requestID":"b481a9a7d651dbc0363b858142b9dd07"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"f3b83b9585d26395e2d44ca316e62cae","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"d06bae72-f232-46f5-aa65-6c5f0c6093d9"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"22298670-d642-4653-bb03-95d7cfa7b044"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"cb1e0866-bb57-47b5-bdc9-7231c3fb79c1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"b481a9a7d651dbc0363b858142b9dd07"} 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/ba8db16b-ab73-49da-9773-06d7239e50a9"},{"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/8ad2735d-3a36-41a9-b2d6-44c00284e63b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"b481a9a7d651dbc0363b858142b9dd07"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3934b500-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f3b83b9585d26395e2d44ca316e62cae"} gateway-1 | {"time_local":"07/Oct/2024:09:33:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ba8db16b-ab73-49da-9773-06d7239e50a9? 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":"f3b83b9585d26395e2d44ca316e62cae"} device-1 | {"level":"info","message":"GET /devices/ba8db16b-ab73-49da-9773-06d7239e50a9? 200 14ms","method":"GET","requestID":"f3b83b9585d26395e2d44ca316e62cae","responseTime":14,"status":200,"url":"/devices/ba8db16b-ab73-49da-9773-06d7239e50a9?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.958244,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3934b500-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293614,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxNH0.nvE0AfSi1XNYAfhAznNvvyAzeccRk6Yr2ctfIP7I_18"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3934b500-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"a3abbf72-f4d7-49ff-923b-4cbf7308c4a8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.684287} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"81f521fb-4dd5-4311-b38f-9a7852724b9d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.6845672} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3934b500-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3934b500-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3934b500-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7'","requestID":"3934b500-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7'","requestID":"3934b500-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3934b500-848f-11ef-9233-95baf63f17e0"} 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":"3934b500-848f-11ef-9233-95baf63f17e0","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":"3934b500-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"b481a9a7d651dbc0363b858142b9dd07"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"393d4080-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"26a07f1d-d350-4aab-8cae-167626bd026c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.7328696} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.58593,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"393d4080-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"393d4080-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"393d4080-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b/signaling 200 9ms","method":"POST","requestID":"393d4080-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"393eee30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2613b85-da2e-4ce8-a43c-81b30715ce20","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293614.7439415} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.566654,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:34Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"393eee30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","object_type":"device","rebac_allow":false,"scope_allow":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":"393eee30-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"393eee30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ba8db16b-ab73-49da-9773-06d7239e50a9/signaling 200 10ms","method":"POST","requestID":"393eee30-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/ba8db16b-ab73-49da-9773-06d7239e50a9/signaling"} device-1 | {"device":"8ad2735d-3a36-41a9-b2d6-44c00284e63b","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":"5d977b0e-ba98-4e5f-ba31-069fcf25d5e7","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ba8db16b-ab73-49da-9773-06d7239e50a9","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":"5d977b0e-ba98-4e5f-ba31-069fcf25d5e7","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ba8db16b-ab73-49da-9773-06d7239e50a9","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":"ba8db16b-ab73-49da-9773-06d7239e50a9","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":"ba8db16b-ab73-49da-9773-06d7239e50a9","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":"ba8db16b-ab73-49da-9773-06d7239e50a9","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/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5d977b0e-ba98-4e5f-ba31-069fcf25d5e7","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c121acfe609992fde69cc4a06852e4c1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c121acfe609992fde69cc4a06852e4c1","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/ba8db16b-ab73-49da-9773-06d7239e50a9"},{"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/8ad2735d-3a36-41a9-b2d6-44c00284e63b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7"}}},"level":"info","message":"received a callback","requestID":"c121acfe609992fde69cc4a06852e4c1"} device-1 | {"device":"8ad2735d-3a36-41a9-b2d6-44c00284e63b","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":"8ad2735d-3a36-41a9-b2d6-44c00284e63b","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":"8ad2735d-3a36-41a9-b2d6-44c00284e63b","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":"c121acfe609992fde69cc4a06852e4c1","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"c121acfe609992fde69cc4a06852e4c1"} device-1 | {"device":"ba8db16b-ab73-49da-9773-06d7239e50a9","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":"5d977b0e-ba98-4e5f-ba31-069fcf25d5e7","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8ad2735d-3a36-41a9-b2d6-44c00284e63b","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":"ba8db16b-ab73-49da-9773-06d7239e50a9","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":"8ad2735d-3a36-41a9-b2d6-44c00284e63b","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":"5d977b0e-ba98-4e5f-ba31-069fcf25d5e7","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/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5d977b0e-ba98-4e5f-ba31-069fcf25d5e7","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6c1323c04c64e0d56e532d6626619b43","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6c1323c04c64e0d56e532d6626619b43","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9"},{"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/8ad2735d-3a36-41a9-b2d6-44c00284e63b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7"}}},"level":"info","message":"received a callback","requestID":"6c1323c04c64e0d56e532d6626619b43"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"3a7bb3f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:36Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5d977b0e-ba98-4e5f-ba31-069fcf25d5e7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f6cc4727-5953-47ce-a91f-714fdede7b18","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293616.8231878} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.455546,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3a7bb3f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7","object_type":"peerconnection","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"3a7bb3f0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"3a7bb3f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7 200 15ms","method":"GET","requestID":"3a7bb3f0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 51ms","method":"POST","requestID":"6c1323c04c64e0d56e532d6626619b43","responseTime":51,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.056","http_referrer":"","http_user_agent":"node-fetch","requestID":"6c1323c04c64e0d56e532d6626619b43"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3a81f580-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:36Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e5af42d2-48c3-4a59-8bf9-c1de899e5e2b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293616.8606136} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.535261,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3a81f580-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3a81f580-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3a81f580-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ba8db16b-ab73-49da-9773-06d7239e50a9/signaling 200 9ms","method":"POST","requestID":"3a81f580-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/ba8db16b-ab73-49da-9773-06d7239e50a9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3a83a330-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:36Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8feb408d-5e9b-46a7-b4b9-3edc3c4289a6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293616.872021} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.355233,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3a83a330-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","object_type":"device","rebac_allow":false,"scope_allow":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":"3a83a330-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3a83a330-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b/signaling 200 9ms","method":"POST","requestID":"3a83a330-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxN30.ZlUT2mApO1fKnrap-viD1TkU4I2H_A8R796KJj-QFpY","level":"info","message":"auth send jwt","requestID":"4741ebb38e7ad998dd7cb92196423983"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4741ebb38e7ad998dd7cb92196423983","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/481f2291-695a-4090-bebe-dcf5a005feb9","requestID":"4741ebb38e7ad998dd7cb92196423983"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.377569,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4741ebb38e7ad998dd7cb92196423983","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293617,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxN30.ZlUT2mApO1fKnrap-viD1TkU4I2H_A8R796KJj-QFpY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4741ebb38e7ad998dd7cb92196423983","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/481f2291-695a-4090-bebe-dcf5a005feb9","requestID":"4741ebb38e7ad998dd7cb92196423983"} experiment-1 | {"level":"info","message":"GET /experiments/481f2291-695a-4090-bebe-dcf5a005feb9 200 16ms","method":"GET","requestID":"4741ebb38e7ad998dd7cb92196423983","responseTime":16,"status":200,"url":"/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"} gateway-1 | {"time_local":"07/Oct/2024:09:33:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/481f2291-695a-4090-bebe-dcf5a005feb9 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":"4741ebb38e7ad998dd7cb92196423983"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxN30.ZlUT2mApO1fKnrap-viD1TkU4I2H_A8R796KJj-QFpY","level":"info","message":"auth send jwt","requestID":"6cd2b510313b6b35c4c81d904e7c639c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6cd2b510313b6b35c4c81d904e7c639c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/481f2291-695a-4090-bebe-dcf5a005feb9","requestID":"6cd2b510313b6b35c4c81d904e7c639c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.313312,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6cd2b510313b6b35c4c81d904e7c639c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293617,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxN30.ZlUT2mApO1fKnrap-viD1TkU4I2H_A8R796KJj-QFpY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6cd2b510313b6b35c4c81d904e7c639c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Attempting to finish experiment","requestID":"6cd2b510313b6b35c4c81d904e7c639c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"3aa498b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.205983,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3aa498b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293617,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxN30.ZlUT2mApO1fKnrap-viD1TkU4I2H_A8R796KJj-QFpY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3aa498b0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"8ad2735d-3a36-41a9-b2d6-44c00284e63b","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":"8ad2735d-3a36-41a9-b2d6-44c00284e63b","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":"8ad2735d-3a36-41a9-b2d6-44c00284e63b","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":"ba8db16b-ab73-49da-9773-06d7239e50a9","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":"ba8db16b-ab73-49da-9773-06d7239e50a9","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":"ba8db16b-ab73-49da-9773-06d7239e50a9","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/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5d977b0e-ba98-4e5f-ba31-069fcf25d5e7","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5d977b0e-ba98-4e5f-ba31-069fcf25d5e7': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5d977b0e-ba98-4e5f-ba31-069fcf25d5e7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"a95bc23f-aa86-4ccf-9eea-b4fda6fd9364","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.1054711} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"16afe9b6-9a2d-425d-a0d2-b88139cb4d7a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.1057932} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fe13b662cb16d6143569bf5a5f14277f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3aa498b0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fe13b662cb16d6143569bf5a5f14277f","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/ba8db16b-ab73-49da-9773-06d7239e50a9"},{"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/8ad2735d-3a36-41a9-b2d6-44c00284e63b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7"}}},"level":"info","message":"received a callback","requestID":"fe13b662cb16d6143569bf5a5f14277f"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bbeb0fd6f87f0473933c8a2f7de133ec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bbeb0fd6f87f0473933c8a2f7de133ec","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/ba8db16b-ab73-49da-9773-06d7239e50a9"},{"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/8ad2735d-3a36-41a9-b2d6-44c00284e63b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7"}}},"level":"info","message":"received a callback","requestID":"bbeb0fd6f87f0473933c8a2f7de133ec"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"3aa498b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7 204 62ms","method":"DELETE","requestID":"3aa498b0-848f-11ef-9233-95baf63f17e0","responseTime":62,"status":204,"url":"/peerconnections/5d977b0e-ba98-4e5f-ba31-069fcf25d5e7"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"},"level":"info","message":"Successfully finished experiment","requestID":"6cd2b510313b6b35c4c81d904e7c639c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3ab1b810-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fba8db16b-ab73-49da-9773-06d7239e50a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2a8362ee-67d0-4076-a58b-076aa1b573b6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.1754885} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.72688,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3ab1b810-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ba8db16b-ab73-49da-9773-06d7239e50a9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ab1b810-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3ab1b810-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ba8db16b-ab73-49da-9773-06d7239e50a9/signaling 200 11ms","method":"POST","requestID":"3ab1b810-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/ba8db16b-ab73-49da-9773-06d7239e50a9/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F481f2291-695a-4090-bebe-dcf5a005feb9': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F481f2291-695a-4090-bebe-dcf5a005feb9","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"621a3b36-d06e-4aa6-bbe7-949c37dd1153","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.1831043} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3ab3daf0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"27713b75-a87d-4793-a81d-fde439693ba7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.1833758} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"6cd2b510313b6b35c4c81d904e7c639c","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ad2735d-3a36-41a9-b2d6-44c00284e63b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7f482f7b-6d42-4fce-a9ad-f8636c117db9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.1893542} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.813706,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3ab3daf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b","object_type":"device","rebac_allow":false,"scope_allow":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":"3ab3daf0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3ab3daf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b/signaling 200 11ms","method":"POST","requestID":"3ab3daf0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/8ad2735d-3a36-41a9-b2d6-44c00284e63b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/481f2291-695a-4090-bebe-dcf5a005feb9","requestID":"6cd2b510313b6b35c4c81d904e7c639c"} gateway-1 | {"time_local":"07/Oct/2024:09:33:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/481f2291-695a-4090-bebe-dcf5a005feb9 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":"6cd2b510313b6b35c4c81d904e7c639c"} experiment-1 | {"level":"info","message":"DELETE /experiments/481f2291-695a-4090-bebe-dcf5a005feb9 204 188ms","method":"DELETE","requestID":"6cd2b510313b6b35c4c81d904e7c639c","responseTime":188,"status":204,"url":"/experiments/481f2291-695a-4090-bebe-dcf5a005feb9"} gateway-1 | {"time_local":"07/Oct/2024:09:33:37 +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.845","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"8a4ba76e8d142905ff4a2791bccfa3c1"} gateway-1 | {"time_local":"07/Oct/2024:09:33:37 +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.836","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a8f9ba5751242fdeb20dceaf185c55fb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 150ms","method":"POST","requestID":"fe13b662cb16d6143569bf5a5f14277f","responseTime":150,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.153","http_referrer":"","http_user_agent":"node-fetch","requestID":"fe13b662cb16d6143569bf5a5f14277f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 149ms","method":"POST","requestID":"bbeb0fd6f87f0473933c8a2f7de133ec","responseTime":149,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.154","http_referrer":"","http_user_agent":"node-fetch","requestID":"bbeb0fd6f87f0473933c8a2f7de133ec"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxN30.ZlUT2mApO1fKnrap-viD1TkU4I2H_A8R796KJj-QFpY","level":"info","message":"auth send jwt","requestID":"54c155fc92721e0d4c9e3704071f578a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"54c155fc92721e0d4c9e3704071f578a","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/8ad2735d-3a36-41a9-b2d6-44c00284e63b' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"54c155fc92721e0d4c9e3704071f578a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.882458,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"54c155fc92721e0d4c9e3704071f578a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293617,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxN30.ZlUT2mApO1fKnrap-viD1TkU4I2H_A8R796KJj-QFpY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"54c155fc92721e0d4c9e3704071f578a","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/ba8db16b-ab73-49da-9773-06d7239e50a9' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"12dc1295-852c-4754-afe5-80b2f5fa5c96","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.286393} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"54c155fc92721e0d4c9e3704071f578a","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b90f75a-4e71-4644-8aa5-30bf3d0696ca","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.292125} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"54c155fc92721e0d4c9e3704071f578a","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"3a82f2a0-0873-4726-9e11-c5d43f960909","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.3040807} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"33bc0f54-ef1d-449f-a6fa-6198e5d7fca2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.3043642} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"54c155fc92721e0d4c9e3704071f578a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.304053105Z"}]},"request_id":"27ee5198-7c6f-4681-ad7b-aba62511e4f0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.3086567} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"54c155fc92721e0d4c9e3704071f578a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"54c155fc92721e0d4c9e3704071f578a"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"54c155fc92721e0d4c9e3704071f578a"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"54c155fc92721e0d4c9e3704071f578a","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxN30.ZlUT2mApO1fKnrap-viD1TkU4I2H_A8R796KJj-QFpY","level":"info","message":"auth send jwt","requestID":"2cf6617f8949d069a352761921e2574f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2cf6617f8949d069a352761921e2574f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2cf6617f8949d069a352761921e2574f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.799648,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2cf6617f8949d069a352761921e2574f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293617,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxN30.ZlUT2mApO1fKnrap-viD1TkU4I2H_A8R796KJj-QFpY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2cf6617f8949d069a352761921e2574f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9046e2e2-85db-46ae-9af7-92ccaa8c2675","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.335395} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2cf6617f8949d069a352761921e2574f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e797b680-0de0-455e-a8e8-cb595c86f62b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.3407626} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"2cf6617f8949d069a352761921e2574f","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"a15bdcfe-3f0c-4fe6-8349-faa8f1d1042a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.3508916} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f2dc6313-29f0-4742-8292-1ba55565d31f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.3510416} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"2cf6617f8949d069a352761921e2574f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.350869984Z"}]},"request_id":"b1661145-7ffc-4a90-ac3d-7c64a7955141","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293617.3557909} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2cf6617f8949d069a352761921e2574f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2cf6617f8949d069a352761921e2574f"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2cf6617f8949d069a352761921e2574f"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"2cf6617f8949d069a352761921e2574f","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e64112c5db93d57c3a41fa71c1ae522c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e64112c5db93d57c3a41fa71c1ae522c","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3db769bb-1c99-413c-add8-65d8028e3856/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":"e64112c5db93d57c3a41fa71c1ae522c"} device-1 | {"level":"info","message":"OPTIONS /devices/3db769bb-1c99-413c-add8-65d8028e3856/websocket 200 1ms","method":"OPTIONS","requestID":"e64112c5db93d57c3a41fa71c1ae522c","responseTime":1,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b7665467dc5124dac0e5dc0862f29c50","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"b7665467dc5124dac0e5dc0862f29c50","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/40039c0a-de21-4b53-84fa-193d04c91e5e/websocket 200 1ms","method":"OPTIONS","requestID":"b7665467dc5124dac0e5dc0862f29c50","responseTime":1,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:33:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/40039c0a-de21-4b53-84fa-193d04c91e5e/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":"b7665467dc5124dac0e5dc0862f29c50"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM","level":"info","message":"auth send jwt","requestID":"0f3b83599e7db7195d83cbb46b0fd248"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"0f3b83599e7db7195d83cbb46b0fd248","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"0f3b83599e7db7195d83cbb46b0fd248"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM","level":"info","message":"auth send jwt","requestID":"863c01ce98f2ca318ffa92824473c129"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"863c01ce98f2ca318ffa92824473c129","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"863c01ce98f2ca318ffa92824473c129"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.177818,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0f3b83599e7db7195d83cbb46b0fd248","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"0f3b83599e7db7195d83cbb46b0fd248","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.454027,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"863c01ce98f2ca318ffa92824473c129","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 12ms","method":"POST","requestID":"863c01ce98f2ca318ffa92824473c129","responseTime":13,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"0f3b83599e7db7195d83cbb46b0fd248"} gateway-1 | {"time_local":"07/Oct/2024:09:33:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3db769bb-1c99-413c-add8-65d8028e3856/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","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":"0f3b83599e7db7195d83cbb46b0fd248"} device-1 | {"level":"info","message":"POST /devices/3db769bb-1c99-413c-add8-65d8028e3856/websocket 200 34ms","method":"POST","requestID":"0f3b83599e7db7195d83cbb46b0fd248","responseTime":34,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"863c01ce98f2ca318ffa92824473c129"} gateway-1 | {"time_local":"07/Oct/2024:09:33:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/40039c0a-de21-4b53-84fa-193d04c91e5e/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.047","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"863c01ce98f2ca318ffa92824473c129"} device-1 | {"level":"info","message":"POST /devices/40039c0a-de21-4b53-84fa-193d04c91e5e/websocket 200 38ms","method":"POST","requestID":"863c01ce98f2ca318ffa92824473c129","responseTime":38,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b341f69af3018c1aef8b760c0438802a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b341f69af3018c1aef8b760c0438802a","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3db769bb-1c99-413c-add8-65d8028e3856? 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":"b341f69af3018c1aef8b760c0438802a"} device-1 | {"level":"info","message":"OPTIONS /devices/3db769bb-1c99-413c-add8-65d8028e3856? 200 1ms","method":"OPTIONS","requestID":"b341f69af3018c1aef8b760c0438802a","responseTime":1,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0a5816ddfe9f6bf3ed8c5bfd7474cc3d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0a5816ddfe9f6bf3ed8c5bfd7474cc3d","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM","level":"info","message":"auth send jwt","requestID":"18b3d2772519de19cbb9f888a41413e5"} gateway-1 | {"time_local":"07/Oct/2024:09:33:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/40039c0a-de21-4b53-84fa-193d04c91e5e? 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":"0a5816ddfe9f6bf3ed8c5bfd7474cc3d"} device-1 | {"level":"info","message":"OPTIONS /devices/40039c0a-de21-4b53-84fa-193d04c91e5e? 200 1ms","method":"OPTIONS","requestID":"0a5816ddfe9f6bf3ed8c5bfd7474cc3d","responseTime":1,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e?"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"18b3d2772519de19cbb9f888a41413e5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"18b3d2772519de19cbb9f888a41413e5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM","level":"info","message":"auth send jwt","requestID":"400ed2ebc60ac6870e11eeaa24a489f8"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.713935,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"400ed2ebc60ac6870e11eeaa24a489f8","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"18b3d2772519de19cbb9f888a41413e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"18b3d2772519de19cbb9f888a41413e5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"400ed2ebc60ac6870e11eeaa24a489f8"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.937875,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"400ed2ebc60ac6870e11eeaa24a489f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"400ed2ebc60ac6870e11eeaa24a489f8","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.304053105Z"}]},"request_id":"ed94ce23-84e9-4764-b1bb-28d99e49877e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.4430866} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"18b3d2772519de19cbb9f888a41413e5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.350869984Z"}]},"request_id":"396c6c05-c817-404f-abaa-2478ff6024e3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.4456449} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"400ed2ebc60ac6870e11eeaa24a489f8","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b265c2e3-fc18-45fc-9032-4eb5381ebab6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.4482288} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"18b3d2772519de19cbb9f888a41413e5","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"65cce409-fb41-4a73-9907-d4939a4371d5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.4532561} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"400ed2ebc60ac6870e11eeaa24a489f8","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.304053105Z"}]},"request_id":"0c373634-9589-4eb7-84b8-99c8dee2e6ab","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.4574826} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"18b3d2772519de19cbb9f888a41413e5","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"18b3d2772519de19cbb9f888a41413e5"} gateway-1 | {"time_local":"07/Oct/2024:09:33:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3db769bb-1c99-413c-add8-65d8028e3856? 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":"18b3d2772519de19cbb9f888a41413e5"} device-1 | {"level":"info","message":"PATCH /devices/3db769bb-1c99-413c-add8-65d8028e3856? 200 33ms","method":"PATCH","requestID":"18b3d2772519de19cbb9f888a41413e5","responseTime":33,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.350869984Z"}]},"request_id":"e68a67f4-c1fc-4607-98dc-01d629d7efce","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.4750435} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"400ed2ebc60ac6870e11eeaa24a489f8","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"400ed2ebc60ac6870e11eeaa24a489f8"} device-1 | {"level":"info","message":"PATCH /devices/40039c0a-de21-4b53-84fa-193d04c91e5e? 200 46ms","method":"PATCH","requestID":"400ed2ebc60ac6870e11eeaa24a489f8","responseTime":46,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/40039c0a-de21-4b53-84fa-193d04c91e5e? 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":"400ed2ebc60ac6870e11eeaa24a489f8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM","level":"info","message":"auth send jwt","requestID":"bae4616eae9cce0ba9acbc2787783d02"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bae4616eae9cce0ba9acbc2787783d02","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bae4616eae9cce0ba9acbc2787783d02"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.972237,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"bae4616eae9cce0ba9acbc2787783d02","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bae4616eae9cce0ba9acbc2787783d02","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.304053105Z"}]},"request_id":"39e54596-bc46-4e23-ae95-c7b08e0c5cde","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.49871} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bae4616eae9cce0ba9acbc2787783d02","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bae4616eae9cce0ba9acbc2787783d02"} gateway-1 | {"time_local":"07/Oct/2024:09:33:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3db769bb-1c99-413c-add8-65d8028e3856? 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":"bae4616eae9cce0ba9acbc2787783d02"} device-1 | {"level":"info","message":"GET /devices/3db769bb-1c99-413c-add8-65d8028e3856? 200 16ms","method":"GET","requestID":"bae4616eae9cce0ba9acbc2787783d02","responseTime":16,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM","level":"info","message":"auth send jwt","requestID":"77527f732d5dffb44946dfc31c9430b0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"77527f732d5dffb44946dfc31c9430b0","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"77527f732d5dffb44946dfc31c9430b0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.939868,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"77527f732d5dffb44946dfc31c9430b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"77527f732d5dffb44946dfc31c9430b0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.350869984Z"}]},"request_id":"8086299d-9aea-481c-897b-439e2d65c951","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.5216808} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"77527f732d5dffb44946dfc31c9430b0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"77527f732d5dffb44946dfc31c9430b0"} gateway-1 | {"time_local":"07/Oct/2024:09:33:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/40039c0a-de21-4b53-84fa-193d04c91e5e? 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":"77527f732d5dffb44946dfc31c9430b0"} device-1 | {"level":"info","message":"GET /devices/40039c0a-de21-4b53-84fa-193d04c91e5e? 200 17ms","method":"GET","requestID":"77527f732d5dffb44946dfc31c9430b0","responseTime":17,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM","level":"info","message":"auth send jwt","requestID":"277d162797fc28f41a2e087e1c633859"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"277d162797fc28f41a2e087e1c633859","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"277d162797fc28f41a2e087e1c633859"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.899427,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"277d162797fc28f41a2e087e1c633859","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"277d162797fc28f41a2e087e1c633859","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Attempting to run experiment","requestID":"277d162797fc28f41a2e087e1c633859"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Attempting to book experiment","requestID":"277d162797fc28f41a2e087e1c633859"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Successfully booked experiment","requestID":"277d162797fc28f41a2e087e1c633859"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3c20ff80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3c212690-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.898595,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c20ff80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3c20ff80-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.585024,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c212690-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3c212690-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.304053105Z"}]},"request_id":"93335717-c818-4cb5-931b-ef62b89df080","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.5858204} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3c20ff80-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.350869984Z"}]},"request_id":"1c1f0574-a1a3-4b15-a6c1-1178923b66de","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.5881476} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3c212690-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3c20ff80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3db769bb-1c99-413c-add8-65d8028e3856? 200 16ms","method":"GET","requestID":"3c20ff80-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3c212690-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/40039c0a-de21-4b53-84fa-193d04c91e5e? 200 16ms","method":"GET","requestID":"3c212690-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Setting up experiment","requestID":"277d162797fc28f41a2e087e1c633859"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"277d162797fc28f41a2e087e1c633859"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Successfully locked booking for experiment","requestID":"277d162797fc28f41a2e087e1c633859"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"277d162797fc28f41a2e087e1c633859"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"277d162797fc28f41a2e087e1c633859"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Attempting to update booking for experiment","requestID":"277d162797fc28f41a2e087e1c633859"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Successfully updated booking for experiment","requestID":"277d162797fc28f41a2e087e1c633859"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Successfully set up experiment","requestID":"277d162797fc28f41a2e087e1c633859"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3c2ac380-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3c2b38b0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Successfully running experiment","requestID":"277d162797fc28f41a2e087e1c633859"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c2b86d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.764519,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.793865,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c2ac380-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3c2ac380-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c2b38b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3c2b38b0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83aeb688-aaec-48ff-afb6-26c305f2fa8f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.6504643} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.519646,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c2b86d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","object_type":"device","rebac_allow":false,"scope_allow":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":"3c2b86d0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.304053105Z"}]},"request_id":"3c2e18eb-aa51-4825-acf0-59cf06e5e085","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.6516163} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.350869984Z"}]},"request_id":"6a16a4c7-8bff-41ff-b54e-29a02eec0b0b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.6529846} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3c2ac380-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3c2b38b0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c2b86d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3db769bb-1c99-413c-add8-65d8028e3856/signaling 200 16ms","method":"POST","requestID":"3c2b86d0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3c2ac380-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3db769bb-1c99-413c-add8-65d8028e3856? 200 21ms","method":"GET","requestID":"3c2ac380-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3c2b38b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/40039c0a-de21-4b53-84fa-193d04c91e5e? 200 20ms","method":"GET","requestID":"3c2b38b0-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c2e45f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6b5248d4-bd83-4b81-b417-ea9bdbaa7f53#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6b5248d4-bd83-4b81-b417-ea9bdbaa7f53","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"3c45d78e-139c-4274-8467-95f9f51789d2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.6656175} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c2ebb20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30ab8ac8-a46e-482d-8155-f09509a59f47","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.6659973} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"277d162797fc28f41a2e087e1c633859","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.78723,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"25cc2f49-7111-47a3-a165-5e53c9f5b953","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.668788} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c2e45f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","object_type":"device","rebac_allow":false,"scope_allow":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":"3c2e45f0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1418cb5c-1a1f-49c4-87bb-17abba8d907d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.6725752} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.903836,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c2ebb20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3c2ebb20-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"277d162797fc28f41a2e087e1c633859"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c2e45f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/40039c0a-de21-4b53-84fa-193d04c91e5e/signaling 200 12ms","method":"POST","requestID":"3c2e45f0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e/signaling"} gateway-1 | {"time_local":"07/Oct/2024:09:33:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"778","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"277d162797fc28f41a2e087e1c633859"} experiment-1 | {"level":"info","message":"POST /experiments? 201 142ms","method":"POST","requestID":"277d162797fc28f41a2e087e1c633859","responseTime":142,"status":201,"url":"/experiments?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM","level":"info","message":"auth send jwt","requestID":"16fb24a1371062e391935017142c7bed"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c2ebb20-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"16fb24a1371062e391935017142c7bed","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/3db769bb-1c99-413c-add8-65d8028e3856/signaling 200 15ms","method":"POST","requestID":"3c2ebb20-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"16fb24a1371062e391935017142c7bed"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c315330-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.759747,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"16fb24a1371062e391935017142c7bed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"16fb24a1371062e391935017142c7bed","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c8bec7b4-e55d-482f-8e5c-919d1c5aef87","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.6872685} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.574771,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c315330-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","object_type":"device","rebac_allow":false,"scope_allow":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":"3c315330-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.304053105Z"}]},"request_id":"bfe708e3-9009-4a2e-80f5-7ace628bdb8a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.6894546} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"16fb24a1371062e391935017142c7bed","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c315330-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/40039c0a-de21-4b53-84fa-193d04c91e5e/signaling 200 11ms","method":"POST","requestID":"3c315330-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"16fb24a1371062e391935017142c7bed"} gateway-1 | {"time_local":"07/Oct/2024:09:33:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3db769bb-1c99-413c-add8-65d8028e3856? 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":"16fb24a1371062e391935017142c7bed"} device-1 | {"level":"info","message":"GET /devices/3db769bb-1c99-413c-add8-65d8028e3856? 200 13ms","method":"GET","requestID":"16fb24a1371062e391935017142c7bed","responseTime":13,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"277d162797fc28f41a2e087e1c633859"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3c334f00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3c337610-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM","level":"info","message":"auth send jwt","requestID":"323d8ca1b3e3f51c14d71b996d35313f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"323d8ca1b3e3f51c14d71b996d35313f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"323d8ca1b3e3f51c14d71b996d35313f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.731499,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c334f00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3c334f00-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.781291,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c337610-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3c337610-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.610036,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"323d8ca1b3e3f51c14d71b996d35313f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"323d8ca1b3e3f51c14d71b996d35313f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.304053105Z"}]},"request_id":"698d2409-fe84-45b8-9ea0-d6bf1031e852","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.7049093} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.350869984Z"}]},"request_id":"ff2d12de-f24e-4b28-82d3-c4b5fbadc866","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.7055619} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3c334f00-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3c337610-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:37.350869984Z"}]},"request_id":"9532f639-4825-415a-b10b-87d6af3dec0f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.709024} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"323d8ca1b3e3f51c14d71b996d35313f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3c334f00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3db769bb-1c99-413c-add8-65d8028e3856? 200 16ms","method":"GET","requestID":"3c334f00-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3c337610-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/40039c0a-de21-4b53-84fa-193d04c91e5e? 200 16ms","method":"GET","requestID":"3c337610-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Building connection plan","requestID":"277d162797fc28f41a2e087e1c633859"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"9ae31823-b9b4-4d36-8fd4-d63abf1017e4"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"618a81cf-6134-439b-acf4-4d9f7ab66554"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"d30600da-40ca-4a25-a038-9214f55878a8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"277d162797fc28f41a2e087e1c633859"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"323d8ca1b3e3f51c14d71b996d35313f"} gateway-1 | {"time_local":"07/Oct/2024:09:33:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/40039c0a-de21-4b53-84fa-193d04c91e5e? 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":"323d8ca1b3e3f51c14d71b996d35313f"} device-1 | {"level":"info","message":"GET /devices/40039c0a-de21-4b53-84fa-193d04c91e5e? 200 16ms","method":"GET","requestID":"323d8ca1b3e3f51c14d71b996d35313f","responseTime":16,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e?"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"3c365c40-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"3c365c40-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 3ms","method":"POST","requestID":"3c365c40-848f-11ef-8885-7d835fc08c91","responseTime":3,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56?id=d57456f8-f09f-4332-9f8e-11e2f0146a51","ws://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56?id=ec251372-b50c-46c3-8d38-52fecc20a3a7"]},"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/3db769bb-1c99-413c-add8-65d8028e3856"},{"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/40039c0a-de21-4b53-84fa-193d04c91e5e"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"277d162797fc28f41a2e087e1c633859"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3c371f90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.434864,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c371f90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293619,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYxOX0.7e0Iol1BauEgcwre25OtNGZbki6MLS850vscXO8RVBM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3c371f90-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"4b0fd13d-5668-4444-845c-268797b41a65","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.7337005} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a21e440f-463d-4c8a-9f83-3fb9e3b8856e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.733934} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3c371f90-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3c371f90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3c371f90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc'","requestID":"3c371f90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc'","requestID":"3c371f90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3c371f90-848f-11ef-9233-95baf63f17e0"} 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":"3c371f90-848f-11ef-9233-95baf63f17e0","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":"3c371f90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b5e47c11-4db9-4a0b-97bb-e3efaf949afc","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"3c3cebf0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\"","requestID":"3c3cebf0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"3c3cebf0-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2cfd4d18d7b3b7c20fd9ae3411307120","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3c3d1300-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d57456f8-f09f-4332-9f8e-11e2f0146a51\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\"","requestID":"3c3d1300-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"3c3d1300-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2cfd4d18d7b3b7c20fd9ae3411307120","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":["websocket"]},"remoteServiceId":"file_consumer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856"},{"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/40039c0a-de21-4b53-84fa-193d04c91e5e"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc"}}},"level":"info","message":"received a callback","requestID":"2cfd4d18d7b3b7c20fd9ae3411307120"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} device-1 | {"data":{"peerconnection":"b5e47c11-4db9-4a0b-97bb-e3efaf949afc","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"2cfd4d18d7b3b7c20fd9ae3411307120","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"2cfd4d18d7b3b7c20fd9ae3411307120"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} device-1 | {"data":{"peerconnection":"b5e47c11-4db9-4a0b-97bb-e3efaf949afc","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 \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"277d162797fc28f41a2e087e1c633859"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c42b850-848f-11ef-9233-95baf63f17e0"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b5e47c11-4db9-4a0b-97bb-e3efaf949afc","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4460e70dedf53295a6db9430973dc23c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"4460e70dedf53295a6db9430973dc23c","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7bb1100d-b96c-4398-9fd0-2fd52abe42de","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.803498} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} 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/3db769bb-1c99-413c-add8-65d8028e3856"},{"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/40039c0a-de21-4b53-84fa-193d04c91e5e"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc"}}},"level":"info","message":"received a callback","requestID":"4460e70dedf53295a6db9430973dc23c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.703058,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c42b850-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","object_type":"device","rebac_allow":false,"scope_allow":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":"3c42b850-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"3c44b420-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb5e47c11-4db9-4a0b-97bb-e3efaf949afc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8cfef618-5e40-4699-8bda-56ddc74dcafa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.8148124} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c42b850-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.327945,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c44b420-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc","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":"3c44b420-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/3db769bb-1c99-413c-add8-65d8028e3856/signaling 200 19ms","method":"POST","requestID":"3c42b850-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c463ac0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"3c44b420-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} device-1 | {"level":"info","message":"GET /peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc 200 12ms","method":"GET","requestID":"3c44b420-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4252de05-37af-40ed-bc39-c6d412229320","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.8246095} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.807014,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c463ac0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3c463ac0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c463ac0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/40039c0a-de21-4b53-84fa-193d04c91e5e/signaling 200 10ms","method":"POST","requestID":"3c463ac0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"4460e70dedf53295a6db9430973dc23c","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"4460e70dedf53295a6db9430973dc23c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c4a3260-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.897364,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"34582eaa-9b70-4c3b-9306-0a208ef4458b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.851821} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c4a3260-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","object_type":"device","rebac_allow":false,"scope_allow":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":"3c4a3260-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c4a3260-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3db769bb-1c99-413c-add8-65d8028e3856/signaling 200 19ms","method":"POST","requestID":"3c4a3260-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c4d8dc0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cc90c919-bb15-492d-bf13-71bf1f66aa8b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293619.8730404} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.552325,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:39Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c4d8dc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","object_type":"device","rebac_allow":false,"scope_allow":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":"3c4d8dc0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c4d8dc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/40039c0a-de21-4b53-84fa-193d04c91e5e/signaling 200 10ms","method":"POST","requestID":"3c4d8dc0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMH0.ufP2KVfdC7Dz06FVsbc47mTT4wFRCf-HtAHWa7uKJC4","level":"info","message":"auth send jwt","requestID":"05acff2d12e4c75b13c77083c3b5afb4"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"05acff2d12e4c75b13c77083c3b5afb4","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53","requestID":"05acff2d12e4c75b13c77083c3b5afb4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.332033,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"05acff2d12e4c75b13c77083c3b5afb4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293620,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMH0.ufP2KVfdC7Dz06FVsbc47mTT4wFRCf-HtAHWa7uKJC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"05acff2d12e4c75b13c77083c3b5afb4","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53","requestID":"05acff2d12e4c75b13c77083c3b5afb4"} gateway-1 | {"time_local":"07/Oct/2024:09:33:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53 HTTP/1.1","status": "200","body_bytes_sent":"851","request_time":"0.024","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"05acff2d12e4c75b13c77083c3b5afb4"} experiment-1 | {"level":"info","message":"GET /experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53 200 16ms","method":"GET","requestID":"05acff2d12e4c75b13c77083c3b5afb4","responseTime":16,"status":200,"url":"/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMH0.ufP2KVfdC7Dz06FVsbc47mTT4wFRCf-HtAHWa7uKJC4","level":"info","message":"auth send jwt","requestID":"6c4d41bbfd147a475cf2daf1b7edc36b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6c4d41bbfd147a475cf2daf1b7edc36b","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53","requestID":"6c4d41bbfd147a475cf2daf1b7edc36b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.200138,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6c4d41bbfd147a475cf2daf1b7edc36b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293620,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMH0.ufP2KVfdC7Dz06FVsbc47mTT4wFRCf-HtAHWa7uKJC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6c4d41bbfd147a475cf2daf1b7edc36b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Attempting to finish experiment","requestID":"6c4d41bbfd147a475cf2daf1b7edc36b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"3c8abdd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.285469,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c8abdd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293620,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMH0.ufP2KVfdC7Dz06FVsbc47mTT4wFRCf-HtAHWa7uKJC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3c8abdd0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc","device":"3db769bb-1c99-413c-add8-65d8028e3856","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"07/Oct/2024:09:33:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56?id=d57456f8-f09f-4332-9f8e-11e2f0146a51 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.528","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"487cca6af5de95efadccf173229298a2"} gateway-1 | {"time_local":"07/Oct/2024:09:33:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56?id=ec251372-b50c-46c3-8d38-52fecc20a3a7 HTTP/1.1","status": "101","body_bytes_sent":"940749","request_time":"0.528","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b23121da7f3f11f1e27c4dc8a2ec5ba0"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc","device":"40039c0a-de21-4b53-84fa-193d04c91e5e","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 \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"ec251372-b50c-46c3-8d38-52fecc20a3a7\" from room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"d57456f8-f09f-4332-9f8e-11e2f0146a51\" in room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"d57456f8-f09f-4332-9f8e-11e2f0146a51\" from room \"http://localhost/rooms/8bcfa551-6b16-431c-b3f6-d551ec6e7c56\""} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b5e47c11-4db9-4a0b-97bb-e3efaf949afc","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb5e47c11-4db9-4a0b-97bb-e3efaf949afc': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb5e47c11-4db9-4a0b-97bb-e3efaf949afc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"a5513a06-8e43-4479-a2f2-a4b8ef2ce0af","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.2898867} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e0dcc33e-e7d8-4e83-9727-1529329911ce","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.290154} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"3c8abdd0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c588223ddac04725ea4bfef994855ba2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c588223ddac04725ea4bfef994855ba2","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":"closed","url":"http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856"},{"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/40039c0a-de21-4b53-84fa-193d04c91e5e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc"}}},"level":"info","message":"received a callback","requestID":"c588223ddac04725ea4bfef994855ba2"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"eadf42c9091fd49938f419be369aacf5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"eadf42c9091fd49938f419be369aacf5","responseTime":2,"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/3db769bb-1c99-413c-add8-65d8028e3856"},{"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/40039c0a-de21-4b53-84fa-193d04c91e5e"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc"}}},"level":"info","message":"received a callback","requestID":"eadf42c9091fd49938f419be369aacf5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"3c8abdd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc 204 37ms","method":"DELETE","requestID":"3c8abdd0-848f-11ef-9233-95baf63f17e0","responseTime":37,"status":204,"url":"/peerconnections/b5e47c11-4db9-4a0b-97bb-e3efaf949afc"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"},"level":"info","message":"Successfully finished experiment","requestID":"6c4d41bbfd147a475cf2daf1b7edc36b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c93e590-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3db769bb-1c99-413c-add8-65d8028e3856","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c7594b1-bee4-4271-bd9c-df21cbfd6760","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.3353534} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.617425,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c93e590-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856","object_type":"device","rebac_allow":false,"scope_allow":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":"3c93e590-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c93e590-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3db769bb-1c99-413c-add8-65d8028e3856/signaling 200 12ms","method":"POST","requestID":"3c93e590-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/3db769bb-1c99-413c-add8-65d8028e3856/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6b5248d4-bd83-4b81-b417-ea9bdbaa7f53': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F6b5248d4-bd83-4b81-b417-ea9bdbaa7f53","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"891489be-82ee-4b60-9aa8-f128d5b0941d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.342502} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"babe49e3-db53-430f-89a7-79e1a8a80e59","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.3428347} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3c960870-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"6c4d41bbfd147a475cf2daf1b7edc36b","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F40039c0a-de21-4b53-84fa-193d04c91e5e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e89cd7ae-d342-4540-918e-05eed7426073","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.3495672} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.021054,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3c960870-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e","object_type":"device","rebac_allow":false,"scope_allow":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":"3c960870-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3c960870-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/40039c0a-de21-4b53-84fa-193d04c91e5e/signaling 200 12ms","method":"POST","requestID":"3c960870-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/40039c0a-de21-4b53-84fa-193d04c91e5e/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53","requestID":"6c4d41bbfd147a475cf2daf1b7edc36b"} gateway-1 | {"time_local":"07/Oct/2024:09:33:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.158","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6c4d41bbfd147a475cf2daf1b7edc36b"} experiment-1 | {"level":"info","message":"DELETE /experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53 204 154ms","method":"DELETE","requestID":"6c4d41bbfd147a475cf2daf1b7edc36b","responseTime":154,"status":204,"url":"/experiments/6b5248d4-bd83-4b81-b417-ea9bdbaa7f53"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"c588223ddac04725ea4bfef994855ba2","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"c588223ddac04725ea4bfef994855ba2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 113ms","method":"POST","requestID":"eadf42c9091fd49938f419be369aacf5","responseTime":113,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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":"eadf42c9091fd49938f419be369aacf5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMH0.ufP2KVfdC7Dz06FVsbc47mTT4wFRCf-HtAHWa7uKJC4","level":"info","message":"auth send jwt","requestID":"221f27f2af6ea149089661b41d62f3cb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"221f27f2af6ea149089661b41d62f3cb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"221f27f2af6ea149089661b41d62f3cb"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3db769bb-1c99-413c-add8-65d8028e3856' closed"} gateway-1 | {"time_local":"07/Oct/2024:09:33:40 +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.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":"558255d0f82cc9b7bca2cc7b1871efb1"} gateway-1 | {"time_local":"07/Oct/2024:09:33:40 +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.033","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3bc6fcb91dd1df1ceda91d809d65d4e9"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.975019,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"221f27f2af6ea149089661b41d62f3cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293620,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMH0.ufP2KVfdC7Dz06FVsbc47mTT4wFRCf-HtAHWa7uKJC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"221f27f2af6ea149089661b41d62f3cb","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/40039c0a-de21-4b53-84fa-193d04c91e5e' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"df855f2f-a110-432f-ac41-34f8fefe50c8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.443661} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"221f27f2af6ea149089661b41d62f3cb","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a599cfb-01ef-45ef-b324-7e09b2aa56d1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.4480093} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"221f27f2af6ea149089661b41d62f3cb","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"f90fe7f9-4b2b-450e-b7d2-15b5a7fa85ed","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.4592311} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d8deee48-c4ca-4f4c-b2a8-0c8ca8eb6703","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.4593284} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"221f27f2af6ea149089661b41d62f3cb","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.459211220Z"}]},"request_id":"26bdb697-bed1-4cb7-a972-d34af7a28a3b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.462996} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"221f27f2af6ea149089661b41d62f3cb","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"221f27f2af6ea149089661b41d62f3cb"} device-1 | {"level":"info","message":"POST /devices? 201 54ms","method":"POST","requestID":"221f27f2af6ea149089661b41d62f3cb","responseTime":54,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.058","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"221f27f2af6ea149089661b41d62f3cb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMH0.ufP2KVfdC7Dz06FVsbc47mTT4wFRCf-HtAHWa7uKJC4","level":"info","message":"auth send jwt","requestID":"53f15b1fdd3875b79b9e0d5ba8ef4e54"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"53f15b1fdd3875b79b9e0d5ba8ef4e54","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"53f15b1fdd3875b79b9e0d5ba8ef4e54"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.665188,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"53f15b1fdd3875b79b9e0d5ba8ef4e54","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293620,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMH0.ufP2KVfdC7Dz06FVsbc47mTT4wFRCf-HtAHWa7uKJC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"53f15b1fdd3875b79b9e0d5ba8ef4e54","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7be50d39-e12a-40cd-9185-aa768b4574e3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.4846778} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"53f15b1fdd3875b79b9e0d5ba8ef4e54","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4cc687f6-f770-4ca1-b332-69617314725d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.488666} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"53f15b1fdd3875b79b9e0d5ba8ef4e54","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"df43b9e1-2277-40f2-8754-e14548cf0576","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.4984837} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2b3c3a72-7140-4ccf-9132-ec56e5f6d9b5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.4985337} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"53f15b1fdd3875b79b9e0d5ba8ef4e54","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.498467640Z"}]},"request_id":"1648fd6f-4671-4a0e-94fd-616efe5e0add","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.503108} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"53f15b1fdd3875b79b9e0d5ba8ef4e54","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"53f15b1fdd3875b79b9e0d5ba8ef4e54"} device-1 | {"level":"info","message":"POST /devices? 201 35ms","method":"POST","requestID":"53f15b1fdd3875b79b9e0d5ba8ef4e54","responseTime":35,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.039","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"53f15b1fdd3875b79b9e0d5ba8ef4e54"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMH0.ufP2KVfdC7Dz06FVsbc47mTT4wFRCf-HtAHWa7uKJC4","level":"info","message":"auth send jwt","requestID":"5899148d7f587bd813946084d3a8df3b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5899148d7f587bd813946084d3a8df3b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5899148d7f587bd813946084d3a8df3b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.750698,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:40Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5899148d7f587bd813946084d3a8df3b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293620,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMH0.ufP2KVfdC7Dz06FVsbc47mTT4wFRCf-HtAHWa7uKJC4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5899148d7f587bd813946084d3a8df3b","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.498467640Z"}]},"request_id":"0c86be5b-0493-4382-9359-5904c35c07b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.991456} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5899148d7f587bd813946084d3a8df3b","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63749265-e9e6-43a5-9524-6d7b5f713ab6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293620.997121} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5899148d7f587bd813946084d3a8df3b","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.498467640Z"}]},"request_id":"cbb2d095-a775-476a-8631-e19c530117e8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293621.009087} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5899148d7f587bd813946084d3a8df3b","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5899148d7f587bd813946084d3a8df3b"} gateway-1 | {"time_local":"07/Oct/2024:09:33:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3acd2f99-6675-4bc3-8695-59159e479d3b HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"5899148d7f587bd813946084d3a8df3b"} device-1 | {"level":"info","message":"PATCH /devices/3acd2f99-6675-4bc3-8695-59159e479d3b 200 33ms","method":"PATCH","requestID":"5899148d7f587bd813946084d3a8df3b","responseTime":33,"status":200,"url":"/devices/3acd2f99-6675-4bc3-8695-59159e479d3b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMX0.6IjpsbxF3zN734tNgcpcZnnA3i5L53PdBKdXIQfg9ak","level":"info","message":"auth send jwt","requestID":"9fca2e7e5d542911401d2e4c6330583b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9fca2e7e5d542911401d2e4c6330583b","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9fca2e7e5d542911401d2e4c6330583b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.865287,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9fca2e7e5d542911401d2e4c6330583b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293621,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMX0.6IjpsbxF3zN734tNgcpcZnnA3i5L53PdBKdXIQfg9ak"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9fca2e7e5d542911401d2e4c6330583b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9fca2e7e5d542911401d2e4c6330583b"} device-1 | {"level":"info","message":"POST /devices/3acd2f99-6675-4bc3-8695-59159e479d3b/websocket 200 19ms","method":"POST","requestID":"9fca2e7e5d542911401d2e4c6330583b","responseTime":19,"status":200,"url":"/devices/3acd2f99-6675-4bc3-8695-59159e479d3b/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:33:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3acd2f99-6675-4bc3-8695-59159e479d3b/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.9","requestID":"9fca2e7e5d542911401d2e4c6330583b"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"891ef74adebcdd8b33451deba7204cd8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"891ef74adebcdd8b33451deba7204cd8","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/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":"891ef74adebcdd8b33451deba7204cd8"} device-1 | {"level":"info","message":"OPTIONS /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/websocket 200 1ms","method":"OPTIONS","requestID":"891ef74adebcdd8b33451deba7204cd8","responseTime":1,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc","level":"info","message":"auth send jwt","requestID":"9c25fdffb2c2944c556521407d296c6a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9c25fdffb2c2944c556521407d296c6a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9c25fdffb2c2944c556521407d296c6a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.22398,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9c25fdffb2c2944c556521407d296c6a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9c25fdffb2c2944c556521407d296c6a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9c25fdffb2c2944c556521407d296c6a"} device-1 | {"level":"info","message":"POST /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/websocket 200 22ms","method":"POST","requestID":"9c25fdffb2c2944c556521407d296c6a","responseTime":22,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:33:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/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":"9c25fdffb2c2944c556521407d296c6a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e04378665fd8a8509b035df4157b8316","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e04378665fd8a8509b035df4157b8316","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0? 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":"e04378665fd8a8509b035df4157b8316"} device-1 | {"level":"info","message":"OPTIONS /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0? 200 1ms","method":"OPTIONS","requestID":"e04378665fd8a8509b035df4157b8316","responseTime":1,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc","level":"info","message":"auth send jwt","requestID":"c298e978bfadcce8687846df5778bafa"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c298e978bfadcce8687846df5778bafa","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c298e978bfadcce8687846df5778bafa"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.158623,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c298e978bfadcce8687846df5778bafa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c298e978bfadcce8687846df5778bafa","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.459211220Z"}]},"request_id":"1ecc4e59-a6af-48ee-a5be-6c903a14f5e9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.6126497} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c298e978bfadcce8687846df5778bafa","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2569a5db-5415-4e4a-a93d-3eb3c8a9cd58","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.6202147} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"c298e978bfadcce8687846df5778bafa","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.459211220Z"}]},"request_id":"54ef8365-9e11-4977-9246-728646ce2e7a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.6336696} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c298e978bfadcce8687846df5778bafa","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c298e978bfadcce8687846df5778bafa"} gateway-1 | {"time_local":"07/Oct/2024:09:33:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0? 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":"c298e978bfadcce8687846df5778bafa"} device-1 | {"level":"info","message":"PATCH /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0? 200 39ms","method":"PATCH","requestID":"c298e978bfadcce8687846df5778bafa","responseTime":39,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc","level":"info","message":"auth send jwt","requestID":"381e1f162a7d39ee84869b751b3b71ff"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"381e1f162a7d39ee84869b751b3b71ff","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"381e1f162a7d39ee84869b751b3b71ff"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.335123,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"381e1f162a7d39ee84869b751b3b71ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"381e1f162a7d39ee84869b751b3b71ff","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.459211220Z"}]},"request_id":"e621d160-6417-4f4a-8c29-9dcfad0b6003","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.6641145} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"381e1f162a7d39ee84869b751b3b71ff","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"381e1f162a7d39ee84869b751b3b71ff"} device-1 | {"level":"info","message":"GET /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0? 200 18ms","method":"GET","requestID":"381e1f162a7d39ee84869b751b3b71ff","responseTime":18,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0? 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":"381e1f162a7d39ee84869b751b3b71ff"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc","level":"info","message":"auth send jwt","requestID":"41a8164e3e7a2f5df2278218b541657b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"41a8164e3e7a2f5df2278218b541657b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"41a8164e3e7a2f5df2278218b541657b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.000437,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"41a8164e3e7a2f5df2278218b541657b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"41a8164e3e7a2f5df2278218b541657b","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.498467640Z"}]},"request_id":"dde08400-9ca2-4679-99a4-77a2b80f1232","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.6904354} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"41a8164e3e7a2f5df2278218b541657b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"41a8164e3e7a2f5df2278218b541657b"} device-1 | {"level":"info","message":"GET /devices/3acd2f99-6675-4bc3-8695-59159e479d3b? 200 18ms","method":"GET","requestID":"41a8164e3e7a2f5df2278218b541657b","responseTime":18,"status":200,"url":"/devices/3acd2f99-6675-4bc3-8695-59159e479d3b?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3acd2f99-6675-4bc3-8695-59159e479d3b? 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":"41a8164e3e7a2f5df2278218b541657b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc","level":"info","message":"auth send jwt","requestID":"05cddc4816dd684e8077fd43b214e6c6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"05cddc4816dd684e8077fd43b214e6c6","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"05cddc4816dd684e8077fd43b214e6c6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.967782,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"05cddc4816dd684e8077fd43b214e6c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"05cddc4816dd684e8077fd43b214e6c6","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Attempting to run experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Attempting to book experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Successfully booked experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3e059e00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3e05ec20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.072032,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e059e00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3e059e00-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.825557,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e05ec20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3e05ec20-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.459211220Z"}]},"request_id":"8778f333-2193-4d15-9f79-aad0432d4f94","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.764455} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"3e059e00-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.498467640Z"}]},"request_id":"04de4bc8-c273-480c-884e-3dd49778215a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.766431} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3e05ec20-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3e059e00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0? 200 20ms","method":"GET","requestID":"3e059e00-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3e05ec20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3acd2f99-6675-4bc3-8695-59159e479d3b? 200 19ms","method":"GET","requestID":"3e05ec20-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/3acd2f99-6675-4bc3-8695-59159e479d3b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Setting up experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Successfully locked booking for experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Attempting to update booking for experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Successfully updated booking for experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Successfully set up experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3e115dd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3e1184e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e11d300-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.135649,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Successfully running experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e115dd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3e115dd0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.832113,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e1184e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3e1184e0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.702356,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bdd33684-b387-4c63-a170-2365911db5af","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.8400295} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.459211220Z"}]},"request_id":"ad7ed72a-d87e-47d7-a8fc-e222aff0d62c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.8421624} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e11d300-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","object_type":"device","rebac_allow":false,"scope_allow":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":"3e11d300-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 13ms","method":"POST","requestID":"3e115dd0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.498467640Z"}]},"request_id":"1ce0386f-2144-447e-853f-0773cb6fd263","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.850629} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"3e1184e0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F54921d0a-e659-4139-bcbf-81044dec4d09#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F54921d0a-e659-4139-bcbf-81044dec4d09","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"30c94c6a-ed04-4935-a1c0-d1033d922610","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.8600252} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c34e745d-b74c-4a33-aef4-06d2c08b375a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.8604755} authorization-1 | {"level":"info","message":"POST /relations/update 200 25ms","method":"POST","requestID":"05cddc4816dd684e8077fd43b214e6c6","responseTime":25,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e11d300-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/signaling 200 32ms","method":"POST","requestID":"3e11d300-848f-11ef-9233-95baf63f17e0","responseTime":32,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3e115dd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0? 200 36ms","method":"GET","requestID":"3e115dd0-848f-11ef-9233-95baf63f17e0","responseTime":36,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3e1184e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3acd2f99-6675-4bc3-8695-59159e479d3b? 200 37ms","method":"GET","requestID":"3e1184e0-848f-11ef-9233-95baf63f17e0","responseTime":37,"status":200,"url":"/devices/3acd2f99-6675-4bc3-8695-59159e479d3b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e179f60-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40e48ce4-4b9c-42a8-b56f-8ea0a81a8eb9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.8779027} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.176482,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e18fef0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e179f60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","object_type":"device","rebac_allow":false,"scope_allow":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":"3e179f60-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"05cddc4816dd684e8077fd43b214e6c6"} gateway-1 | {"time_local":"07/Oct/2024:09:33:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.186","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"05cddc4816dd684e8077fd43b214e6c6"} experiment-1 | {"level":"info","message":"POST /experiments? 201 178ms","method":"POST","requestID":"05cddc4816dd684e8077fd43b214e6c6","responseTime":178,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6872f440-5ffd-4fc1-93cd-eac383276f4f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.8881648} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e179f60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3acd2f99-6675-4bc3-8695-59159e479d3b/signaling 200 19ms","method":"POST","requestID":"3e179f60-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/3acd2f99-6675-4bc3-8695-59159e479d3b/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.628394,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e18fef0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","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.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc","level":"info","message":"auth send jwt","requestID":"4f12274c4c5c0c51825d38f66a9d598b"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"3e18fef0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4f12274c4c5c0c51825d38f66a9d598b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4f12274c4c5c0c51825d38f66a9d598b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e18fef0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/signaling 200 18ms","method":"POST","requestID":"3e18fef0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.395697,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4f12274c4c5c0c51825d38f66a9d598b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4f12274c4c5c0c51825d38f66a9d598b","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e1c0c30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.459211220Z"}]},"request_id":"3b558e88-c402-4e67-89b9-6fa7273170b5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.9042108} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4f12274c4c5c0c51825d38f66a9d598b","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8d5b863-574e-4a86-8da4-7b1e32b6b0f5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.9044387} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.727049,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e1c0c30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3e1c0c30-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4f12274c4c5c0c51825d38f66a9d598b"} gateway-1 | {"time_local":"07/Oct/2024:09:33:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0? 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":"4f12274c4c5c0c51825d38f66a9d598b"} device-1 | {"level":"info","message":"GET /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0? 200 17ms","method":"GET","requestID":"4f12274c4c5c0c51825d38f66a9d598b","responseTime":17,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e1c0c30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3acd2f99-6675-4bc3-8695-59159e479d3b/signaling 200 12ms","method":"POST","requestID":"3e1c0c30-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/3acd2f99-6675-4bc3-8695-59159e479d3b/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3e1e5620-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc","level":"info","message":"auth send jwt","requestID":"ec72856f98507002e201d2df3af51f80"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ec72856f98507002e201d2df3af51f80","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3e1ea440-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ec72856f98507002e201d2df3af51f80"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.817075,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e1e5620-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3e1e5620-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.252786,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e1ea440-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3e1ea440-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.721861,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ec72856f98507002e201d2df3af51f80","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ec72856f98507002e201d2df3af51f80","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.459211220Z"}]},"request_id":"07b0c1e9-e8f4-456c-b65a-5e11a45645cd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.9251146} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3e1e5620-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.498467640Z"}]},"request_id":"a221d2bd-ae57-4fb9-9c53-838fc6e169f6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.9273102} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3e1ea440-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:40.498467640Z"}]},"request_id":"8756c315-33ad-4264-8184-a4a94c964d70","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.9294255} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ec72856f98507002e201d2df3af51f80","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3e1e5620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0? 200 17ms","method":"GET","requestID":"3e1e5620-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3e1ea440-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3acd2f99-6675-4bc3-8695-59159e479d3b? 200 18ms","method":"GET","requestID":"3e1ea440-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/3acd2f99-6675-4bc3-8695-59159e479d3b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ec72856f98507002e201d2df3af51f80"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Building connection plan","requestID":"05cddc4816dd684e8077fd43b214e6c6"} device-1 | {"level":"info","message":"GET /devices/3acd2f99-6675-4bc3-8695-59159e479d3b? 200 17ms","method":"GET","requestID":"ec72856f98507002e201d2df3af51f80","responseTime":17,"status":200,"url":"/devices/3acd2f99-6675-4bc3-8695-59159e479d3b?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:42 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3acd2f99-6675-4bc3-8695-59159e479d3b? 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":"ec72856f98507002e201d2df3af51f80"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"3d12ebcf-1cc6-4411-9add-5edad74c076f"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"b1cf8888-8f43-430b-8a03-ad2ade9ff7d5"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"00d72df2-1bee-46a3-bd59-ab418a03f62a"}]},"level":"info","message":"Built pairwise service configurations","requestID":"05cddc4816dd684e8077fd43b214e6c6"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"3e21d890-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"3e21d890-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"3e21d890-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab?id=f621a69a-fc2e-459d-b2d8-e2804e64fc41","ws://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab?id=a4e40293-da3e-4d4e-9491-dae25acd04f1"]},"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/4787c84b-e1ae-435f-a6a0-f3cf3de232a0"},{"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/3acd2f99-6675-4bc3-8695-59159e479d3b"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"05cddc4816dd684e8077fd43b214e6c6"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3e224dc0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.85333,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:42Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e224dc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293622,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyMn0.8GSKhWPh9Bd53sHWacwXewLb9pe2ZrzBODuiwOFcaqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3e224dc0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"9912ecab-6639-4677-9e52-0ffe8dcf0dc2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.9534175} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a843bafd-8414-492f-9d6d-cda8bd75c229","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293622.9537685} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3e224dc0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3e224dc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3e224dc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7'","requestID":"3e224dc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7'","requestID":"3e224dc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3e224dc0-848f-11ef-9233-95baf63f17e0"} 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":"3e224dc0-848f-11ef-9233-95baf63f17e0","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":"3e224dc0-848f-11ef-9233-95baf63f17e0"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"3e286840-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\"","requestID":"3e286840-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"3e286840-848f-11ef-8885-7d835fc08c91"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"587dc536-2926-4d0c-820a-9aa0e8e223f7","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"3e28dd70-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f621a69a-fc2e-459d-b2d8-e2804e64fc41\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\"","requestID":"3e28dd70-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"3e28dd70-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"459c91891fd5d5807d3e491a8759e816","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"459c91891fd5d5807d3e491a8759e816","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} 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/4787c84b-e1ae-435f-a6a0-f3cf3de232a0"},{"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/3acd2f99-6675-4bc3-8695-59159e479d3b"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7"}}},"level":"info","message":"received a callback","requestID":"459c91891fd5d5807d3e491a8759e816"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"459c91891fd5d5807d3e491a8759e816","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"459c91891fd5d5807d3e491a8759e816"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} device-1 | {"data":{"peerconnection":"587dc536-2926-4d0c-820a-9aa0e8e223f7","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"05cddc4816dd684e8077fd43b214e6c6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e2d4a40-848f-11ef-9233-95baf63f17e0"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} device-1 | {"data":{"peerconnection":"587dc536-2926-4d0c-820a-9aa0e8e223f7","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 \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50bec4c8-139c-4139-84bb-0e9fc5cf7d47","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.0176468} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.712576,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e2d4a40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","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":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3e2d4a40-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e2d4a40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/signaling 200 11ms","method":"POST","requestID":"3e2d4a40-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e2f6d20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"521ba000-25ac-4b4b-a656-73404d16c1d5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.0308487} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.104714,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e2f6d20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","object_type":"device","rebac_allow":false,"scope_allow":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":"3e2f6d20-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"587dc536-2926-4d0c-820a-9aa0e8e223f7","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e2f6d20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3acd2f99-6675-4bc3-8695-59159e479d3b/signaling 200 11ms","method":"POST","requestID":"3e2f6d20-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/3acd2f99-6675-4bc3-8695-59159e479d3b/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e7a6535eb4ce5d5c1bf354332d6f75ff","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e7a6535eb4ce5d5c1bf354332d6f75ff","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/4787c84b-e1ae-435f-a6a0-f3cf3de232a0"},{"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/3acd2f99-6675-4bc3-8695-59159e479d3b"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7"}}},"level":"info","message":"received a callback","requestID":"e7a6535eb4ce5d5c1bf354332d6f75ff"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"3e322c40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F587dc536-2926-4d0c-820a-9aa0e8e223f7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"37789011-ca3f-45cd-9e45-115bd676d999","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.049714} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.980857,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e322c40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7","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":"3e322c40-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"3e322c40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7 200 9ms","method":"GET","requestID":"3e322c40-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"e7a6535eb4ce5d5c1bf354332d6f75ff","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"e7a6535eb4ce5d5c1bf354332d6f75ff"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e3587a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dd0edd34-77f2-4116-9906-0e92929ab6a8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.0703542} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.452336,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e3587a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3e3587a0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e3587a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/signaling 200 9ms","method":"POST","requestID":"3e3587a0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e373550-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"de5f1730-cb26-4ec9-8095-5e3e3c2d3f74","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.0811682} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.33048,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e373550-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","object_type":"device","rebac_allow":false,"scope_allow":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":"3e373550-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e373550-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3acd2f99-6675-4bc3-8695-59159e479d3b/signaling 200 8ms","method":"POST","requestID":"3e373550-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/3acd2f99-6675-4bc3-8695-59159e479d3b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyM30.VB7e5ftc4nVuMVvKR8jgetbL7jtJEbZD3_z4wyzaUU0","level":"info","message":"auth send jwt","requestID":"4c2295282be68dc3e12d6d43ba45655a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4c2295282be68dc3e12d6d43ba45655a","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/54921d0a-e659-4139-bcbf-81044dec4d09","requestID":"4c2295282be68dc3e12d6d43ba45655a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.289896,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4c2295282be68dc3e12d6d43ba45655a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293623,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyM30.VB7e5ftc4nVuMVvKR8jgetbL7jtJEbZD3_z4wyzaUU0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4c2295282be68dc3e12d6d43ba45655a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/54921d0a-e659-4139-bcbf-81044dec4d09","requestID":"4c2295282be68dc3e12d6d43ba45655a"} gateway-1 | {"time_local":"07/Oct/2024:09:33:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/54921d0a-e659-4139-bcbf-81044dec4d09 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":"4c2295282be68dc3e12d6d43ba45655a"} experiment-1 | {"level":"info","message":"GET /experiments/54921d0a-e659-4139-bcbf-81044dec4d09 200 15ms","method":"GET","requestID":"4c2295282be68dc3e12d6d43ba45655a","responseTime":15,"status":200,"url":"/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyM30.VB7e5ftc4nVuMVvKR8jgetbL7jtJEbZD3_z4wyzaUU0","level":"info","message":"auth send jwt","requestID":"d32270b562eb268b2fa8af6a42b353df"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d32270b562eb268b2fa8af6a42b353df","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/54921d0a-e659-4139-bcbf-81044dec4d09","requestID":"d32270b562eb268b2fa8af6a42b353df"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.687144,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d32270b562eb268b2fa8af6a42b353df","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293623,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyM30.VB7e5ftc4nVuMVvKR8jgetbL7jtJEbZD3_z4wyzaUU0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"d32270b562eb268b2fa8af6a42b353df","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Attempting to finish experiment","requestID":"d32270b562eb268b2fa8af6a42b353df"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"3e4da380-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.041264,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e4da380-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293623,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyM30.VB7e5ftc4nVuMVvKR8jgetbL7jtJEbZD3_z4wyzaUU0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3e4da380-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/17247f9f-58eb-4916-b535-bd4622c190ab?id=a4e40293-da3e-4d4e-9491-dae25acd04f1 HTTP/1.1","status": "101","body_bytes_sent":"940747","request_time":"0.262","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"ce099ef08bc3d6b17b6071dc4e956124"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a4e40293-da3e-4d4e-9491-dae25acd04f1\" from room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7","device":"4787c84b-e1ae-435f-a6a0-f3cf3de232a0","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/587dc536-2926-4d0c-820a-9aa0e8e223f7' to 'http://localhost/callbacks/experiment'"} gateway-1 | {"time_local":"07/Oct/2024:09:33:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/17247f9f-58eb-4916-b535-bd4622c190ab?id=f621a69a-fc2e-459d-b2d8-e2804e64fc41 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.261","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"198b7f1eb75fa9e8cf9d947135e3cd0d"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"587dc536-2926-4d0c-820a-9aa0e8e223f7","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f621a69a-fc2e-459d-b2d8-e2804e64fc41\" in room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f621a69a-fc2e-459d-b2d8-e2804e64fc41\" from room \"http://localhost/rooms/17247f9f-58eb-4916-b535-bd4622c190ab\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"be0773e403344bd40cb34ddc3bb8f146","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"be0773e403344bd40cb34ddc3bb8f146","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F587dc536-2926-4d0c-820a-9aa0e8e223f7': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F587dc536-2926-4d0c-820a-9aa0e8e223f7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"cc459d12-aa60-4ebe-8995-ad03fd3664b9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.2473636} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c52cdd656dbcb0794cb0a51d18b94321","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9e5b017c-53f9-4024-bb57-c8e8ad7a52a8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.2477481} 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/4787c84b-e1ae-435f-a6a0-f3cf3de232a0"},{"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/3acd2f99-6675-4bc3-8695-59159e479d3b"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7"}}},"level":"info","message":"received a callback","requestID":"be0773e403344bd40cb34ddc3bb8f146"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c52cdd656dbcb0794cb0a51d18b94321","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"3e4da380-848f-11ef-9233-95baf63f17e0","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":"connected","url":"http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0"},{"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/3acd2f99-6675-4bc3-8695-59159e479d3b"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7"}}},"level":"info","message":"received a callback","requestID":"c52cdd656dbcb0794cb0a51d18b94321"} device-1 | {"data":{"peerconnection":"587dc536-2926-4d0c-820a-9aa0e8e223f7","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"3e4da380-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7 204 42ms","method":"DELETE","requestID":"3e4da380-848f-11ef-9233-95baf63f17e0","responseTime":42,"status":204,"url":"/peerconnections/587dc536-2926-4d0c-820a-9aa0e8e223f7"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"},"level":"info","message":"Successfully finished experiment","requestID":"d32270b562eb268b2fa8af6a42b353df"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e5803c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4787c84b-e1ae-435f-a6a0-f3cf3de232a0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3dfd5958-1428-4660-b4c2-90f95c064abf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.298382} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.486578,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e5803c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0","object_type":"device","rebac_allow":false,"scope_allow":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":"3e5803c0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e5803c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/signaling 200 11ms","method":"POST","requestID":"3e5803c0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/4787c84b-e1ae-435f-a6a0-f3cf3de232a0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3e5a26a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F54921d0a-e659-4139-bcbf-81044dec4d09': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F54921d0a-e659-4139-bcbf-81044dec4d09","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"fd87551c-702f-4d60-8af0-be7655c4dff5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.307605} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"953d4335-2428-4510-8554-e226234f7688","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.307901} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"d32270b562eb268b2fa8af6a42b353df","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3acd2f99-6675-4bc3-8695-59159e479d3b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d70e8fb-ca2a-4120-90bd-53ab17319388","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.312667} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.826057,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e5a26a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3acd2f99-6675-4bc3-8695-59159e479d3b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3e5a26a0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3e5a26a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3acd2f99-6675-4bc3-8695-59159e479d3b/signaling 200 12ms","method":"POST","requestID":"3e5a26a0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/3acd2f99-6675-4bc3-8695-59159e479d3b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/54921d0a-e659-4139-bcbf-81044dec4d09","requestID":"d32270b562eb268b2fa8af6a42b353df"} gateway-1 | {"time_local":"07/Oct/2024:09:33:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/54921d0a-e659-4139-bcbf-81044dec4d09 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":"d32270b562eb268b2fa8af6a42b353df"} gateway-1 | {"time_local":"07/Oct/2024:09:33:43 +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.342","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"300ea84b21ea9df08cab609cce988b79"} experiment-1 | {"level":"info","message":"DELETE /experiments/54921d0a-e659-4139-bcbf-81044dec4d09 204 175ms","method":"DELETE","requestID":"d32270b562eb268b2fa8af6a42b353df","responseTime":175,"status":204,"url":"/experiments/54921d0a-e659-4139-bcbf-81044dec4d09"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"be0773e403344bd40cb34ddc3bb8f146","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"be0773e403344bd40cb34ddc3bb8f146"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"c52cdd656dbcb0794cb0a51d18b94321","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.139","http_referrer":"","http_user_agent":"node-fetch","requestID":"c52cdd656dbcb0794cb0a51d18b94321"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyM30.VB7e5ftc4nVuMVvKR8jgetbL7jtJEbZD3_z4wyzaUU0","level":"info","message":"auth send jwt","requestID":"a22d5e5780507f55c6a37ef8ffb9fedf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a22d5e5780507f55c6a37ef8ffb9fedf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a22d5e5780507f55c6a37ef8ffb9fedf"} gateway-1 | {"time_local":"07/Oct/2024:09:33:43 +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.837","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"73cddaf126b5c245b33488a19038c3fa"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.878439,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a22d5e5780507f55c6a37ef8ffb9fedf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293623,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyM30.VB7e5ftc4nVuMVvKR8jgetbL7jtJEbZD3_z4wyzaUU0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a22d5e5780507f55c6a37ef8ffb9fedf","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/3acd2f99-6675-4bc3-8695-59159e479d3b' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e7fda302-53d3-4e85-84b4-000702a0e6ce","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.4061162} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a22d5e5780507f55c6a37ef8ffb9fedf","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/4787c84b-e1ae-435f-a6a0-f3cf3de232a0' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b575440a-3e76-4b74-b561-fb68adfbf62e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.4106874} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a22d5e5780507f55c6a37ef8ffb9fedf","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"a0f1f839-66a2-44ac-bc25-6b3ef7956a0c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.4223993} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4f350b48-d80d-4804-a2eb-3833261e3a20","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.4227061} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"a22d5e5780507f55c6a37ef8ffb9fedf","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.422378411Z"}]},"request_id":"b170495c-5808-4fa7-be66-4584610dcac7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.4276693} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a22d5e5780507f55c6a37ef8ffb9fedf","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a22d5e5780507f55c6a37ef8ffb9fedf"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a22d5e5780507f55c6a37ef8ffb9fedf"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"a22d5e5780507f55c6a37ef8ffb9fedf","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyM30.VB7e5ftc4nVuMVvKR8jgetbL7jtJEbZD3_z4wyzaUU0","level":"info","message":"auth send jwt","requestID":"95d755bdedd9940aa5b3435c39e109cc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"95d755bdedd9940aa5b3435c39e109cc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"95d755bdedd9940aa5b3435c39e109cc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.755951,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"95d755bdedd9940aa5b3435c39e109cc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293623,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyM30.VB7e5ftc4nVuMVvKR8jgetbL7jtJEbZD3_z4wyzaUU0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"95d755bdedd9940aa5b3435c39e109cc","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8df62faf-c428-4eea-8753-5703a613ca47","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.4577413} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"95d755bdedd9940aa5b3435c39e109cc","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b3002ac-b019-41d2-ae64-bf4867582e34","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.4623938} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"95d755bdedd9940aa5b3435c39e109cc","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"ada7e2f6-7df2-42fb-99e5-40017880fe47","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.474993} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"82eabea8-8490-4d33-a6ae-702fd167b7a8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.4754732} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"95d755bdedd9940aa5b3435c39e109cc","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.474950860Z"}]},"request_id":"b0d50c2b-31ef-46f9-9192-97d759ade012","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.48043} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"95d755bdedd9940aa5b3435c39e109cc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"95d755bdedd9940aa5b3435c39e109cc"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"95d755bdedd9940aa5b3435c39e109cc"} device-1 | {"level":"info","message":"POST /devices? 201 47ms","method":"POST","requestID":"95d755bdedd9940aa5b3435c39e109cc","responseTime":47,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyM30.VB7e5ftc4nVuMVvKR8jgetbL7jtJEbZD3_z4wyzaUU0","level":"info","message":"auth send jwt","requestID":"eb06afb9a761153950eeab4641b6bbeb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"eb06afb9a761153950eeab4641b6bbeb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"eb06afb9a761153950eeab4641b6bbeb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.845834,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"eb06afb9a761153950eeab4641b6bbeb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293623,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyM30.VB7e5ftc4nVuMVvKR8jgetbL7jtJEbZD3_z4wyzaUU0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eb06afb9a761153950eeab4641b6bbeb","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.422378411Z"}]},"request_id":"e990ec5b-c8ff-459b-92e3-1114ac41ea2d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.9619305} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"eb06afb9a761153950eeab4641b6bbeb","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83d82dc4-5f34-4925-be7d-24248fbd82b0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.967949} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"eb06afb9a761153950eeab4641b6bbeb","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.422378411Z"}]},"request_id":"29273b4d-9734-4087-a464-b28ce1c41589","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293623.980895} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"eb06afb9a761153950eeab4641b6bbeb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"eb06afb9a761153950eeab4641b6bbeb"} device-1 | {"level":"info","message":"PATCH /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6 200 33ms","method":"PATCH","requestID":"eb06afb9a761153950eeab4641b6bbeb","responseTime":33,"status":200,"url":"/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6"} gateway-1 | {"time_local":"07/Oct/2024:09:33:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"eb06afb9a761153950eeab4641b6bbeb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyM30.VB7e5ftc4nVuMVvKR8jgetbL7jtJEbZD3_z4wyzaUU0","level":"info","message":"auth send jwt","requestID":"8d9c380f1909e9e68eaf1beb61d96fc3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8d9c380f1909e9e68eaf1beb61d96fc3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8d9c380f1909e9e68eaf1beb61d96fc3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.44166,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8d9c380f1909e9e68eaf1beb61d96fc3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293623,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyM30.VB7e5ftc4nVuMVvKR8jgetbL7jtJEbZD3_z4wyzaUU0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8d9c380f1909e9e68eaf1beb61d96fc3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8d9c380f1909e9e68eaf1beb61d96fc3"} gateway-1 | {"time_local":"07/Oct/2024:09:33:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6/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.9","requestID":"8d9c380f1909e9e68eaf1beb61d96fc3"} device-1 | {"level":"info","message":"POST /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6/websocket 200 20ms","method":"POST","requestID":"8d9c380f1909e9e68eaf1beb61d96fc3","responseTime":20,"status":200,"url":"/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"11082c5bd87fb6782931bd7a15c0ffe0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"11082c5bd87fb6782931bd7a15c0ffe0","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/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":"11082c5bd87fb6782931bd7a15c0ffe0"} device-1 | {"level":"info","message":"OPTIONS /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/websocket 200 1ms","method":"OPTIONS","requestID":"11082c5bd87fb6782931bd7a15c0ffe0","responseTime":1,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY","level":"info","message":"auth send jwt","requestID":"a305c0749fa35705b479a2e382566d16"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a305c0749fa35705b479a2e382566d16","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a305c0749fa35705b479a2e382566d16"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.263877,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a305c0749fa35705b479a2e382566d16","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a305c0749fa35705b479a2e382566d16","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a305c0749fa35705b479a2e382566d16"} device-1 | {"level":"info","message":"POST /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/websocket 200 23ms","method":"POST","requestID":"a305c0749fa35705b479a2e382566d16","responseTime":23,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:33:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/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":"a305c0749fa35705b479a2e382566d16"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b423159554b5e81e66a7f116efc871a1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b423159554b5e81e66a7f116efc871a1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83? 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":"b423159554b5e81e66a7f116efc871a1"} device-1 | {"level":"info","message":"OPTIONS /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83? 200 1ms","method":"OPTIONS","requestID":"b423159554b5e81e66a7f116efc871a1","responseTime":1,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY","level":"info","message":"auth send jwt","requestID":"3370692278b4494193e98d462210dfe6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3370692278b4494193e98d462210dfe6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"3370692278b4494193e98d462210dfe6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.220868,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3370692278b4494193e98d462210dfe6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3370692278b4494193e98d462210dfe6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.474950860Z"}]},"request_id":"398416ab-a887-4303-aec7-8752792c9950","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.5999696} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3370692278b4494193e98d462210dfe6","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0659b7df-f888-4857-8ed0-f70a1f44de94","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.6077452} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"3370692278b4494193e98d462210dfe6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.474950860Z"}]},"request_id":"d1ab7722-fa2c-4e34-afd8-85e57ba42bb9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.6194053} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3370692278b4494193e98d462210dfe6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"3370692278b4494193e98d462210dfe6"} gateway-1 | {"time_local":"07/Oct/2024:09:33:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3370692278b4494193e98d462210dfe6"} device-1 | {"level":"info","message":"PATCH /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83? 200 37ms","method":"PATCH","requestID":"3370692278b4494193e98d462210dfe6","responseTime":37,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY","level":"info","message":"auth send jwt","requestID":"8a371237c3337f8cd5ef1b05854cf6e5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8a371237c3337f8cd5ef1b05854cf6e5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8a371237c3337f8cd5ef1b05854cf6e5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.30123,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8a371237c3337f8cd5ef1b05854cf6e5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"8a371237c3337f8cd5ef1b05854cf6e5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.422378411Z"}]},"request_id":"2dc4c37d-46bf-45f5-bc2f-aac9c994e0ff","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.6510358} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"8a371237c3337f8cd5ef1b05854cf6e5","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8a371237c3337f8cd5ef1b05854cf6e5"} gateway-1 | {"time_local":"07/Oct/2024:09:33:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6? 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":"8a371237c3337f8cd5ef1b05854cf6e5"} device-1 | {"level":"info","message":"GET /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6? 200 20ms","method":"GET","requestID":"8a371237c3337f8cd5ef1b05854cf6e5","responseTime":20,"status":200,"url":"/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY","level":"info","message":"auth send jwt","requestID":"a8f99d28a428239b45cb1f412fcb0ecf"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a8f99d28a428239b45cb1f412fcb0ecf","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a8f99d28a428239b45cb1f412fcb0ecf"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.209523,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a8f99d28a428239b45cb1f412fcb0ecf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a8f99d28a428239b45cb1f412fcb0ecf","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.474950860Z"}]},"request_id":"48873cc9-a9da-4f8d-a106-b639fba95d46","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.6764128} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a8f99d28a428239b45cb1f412fcb0ecf","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a8f99d28a428239b45cb1f412fcb0ecf"} device-1 | {"level":"info","message":"GET /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83? 200 16ms","method":"GET","requestID":"a8f99d28a428239b45cb1f412fcb0ecf","responseTime":16,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83? 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":"a8f99d28a428239b45cb1f412fcb0ecf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY","level":"info","message":"auth send jwt","requestID":"3dd40d1f39881e8568d61ebec4de4862"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3dd40d1f39881e8568d61ebec4de4862","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"3dd40d1f39881e8568d61ebec4de4862"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.436385,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3dd40d1f39881e8568d61ebec4de4862","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3dd40d1f39881e8568d61ebec4de4862","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Attempting to run experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Attempting to book experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Successfully booked experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3fccf080-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3fcd1790-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.117015,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3fccf080-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3fccf080-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.467013,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3fcd1790-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3fcd1790-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.422378411Z"}]},"request_id":"ce567bc4-4f0b-4583-8ee3-c854edd532bb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.7453911} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3fccf080-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.474950860Z"}]},"request_id":"de63a1e0-c790-43ab-a781-88820c522f73","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.746919} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3fcd1790-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3fccf080-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6? 200 15ms","method":"GET","requestID":"3fccf080-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3fcd1790-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83? 200 15ms","method":"GET","requestID":"3fcd1790-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Setting up experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Successfully set up experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3fd79ee0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3fd7ed00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3fd83b20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.897519,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Successfully running experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3fd79ee0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"3fd79ee0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.82836,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3fd7ed00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"3fd7ed00-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.422378411Z"}]},"request_id":"b3f05670-8669-46b9-a764-430ed0d065ff","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.8240435} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"3fd79ee0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.474950860Z"}]},"request_id":"a28254ce-b71d-4a4a-820b-6994ea4f1265","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.8265772} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"3fd7ed00-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:39158","level":"info","msg":"Received request.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae2ac08e-812b-441f-a3c6-bfc99d15a7a1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.833346} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3fd79ee0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6? 200 29ms","method":"GET","requestID":"3fd79ee0-848f-11ef-9233-95baf63f17e0","responseTime":29,"status":200,"url":"/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3fd7ed00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83? 200 30ms","method":"GET","requestID":"3fd7ed00-848f-11ef-9233-95baf63f17e0","responseTime":30,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83?"} authorization-1 | {"client_addr":"127.0.0.1:39158","level":"info","msg":"Sent response.","req_id":562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.141892,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3fd83b20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 25ms","method":"POST","requestID":"3fd83b20-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"4937aa50-b972-4e8b-a960-85ebf73d6016","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.839137} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3044f37d-ce02-4d48-818d-6b5c8e13eca4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.8393857} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3fdd4430-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"3dd40d1f39881e8568d61ebec4de4862","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3fd83b20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6/signaling 200 37ms","method":"POST","requestID":"3fd83b20-848f-11ef-9233-95baf63f17e0","responseTime":37,"status":200,"url":"/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b34321cd-34ae-43d1-a45c-a42ef2c55cdc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.8511329} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.405767,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3fdea3c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3fdd4430-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","object_type":"device","rebac_allow":false,"scope_allow":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":"3fdd4430-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3fdd4430-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"3dd40d1f39881e8568d61ebec4de4862"} gateway-1 | {"time_local":"07/Oct/2024:09:33:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"782","request_time":"0.174","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3dd40d1f39881e8568d61ebec4de4862"} device-1 | {"level":"info","message":"POST /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6/signaling 200 14ms","method":"POST","requestID":"3fdd4430-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 168ms","method":"POST","requestID":"3dd40d1f39881e8568d61ebec4de4862","responseTime":168,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3fe00350-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a8638066-7dfa-4c18-b309-51325ae40f28","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.8628352} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":7.64348,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY","level":"info","message":"auth send jwt","requestID":"ee97f92253bce520797e3fd4bf5f55fc"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3fdea3c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","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 6ms","method":"GET","requestID":"ee97f92253bce520797e3fd4bf5f55fc","responseTime":6,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"3fdea3c0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"02791d3a-ea1c-45a5-b34f-91310f398443","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.8682446} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.014211,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ee97f92253bce520797e3fd4bf5f55fc"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3fe00350-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","object_type":"device","rebac_allow":false,"scope_allow":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":"3fe00350-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3fdea3c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/signaling 200 23ms","method":"POST","requestID":"3fdea3c0-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.351518,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ee97f92253bce520797e3fd4bf5f55fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"ee97f92253bce520797e3fd4bf5f55fc","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3fe00350-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/signaling 200 20ms","method":"POST","requestID":"3fe00350-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.422378411Z"}]},"request_id":"0e55930e-36e8-4088-82d2-4379a6a44774","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.8826814} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ee97f92253bce520797e3fd4bf5f55fc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3fe385c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3fe3d3e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.586949,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ee97f92253bce520797e3fd4bf5f55fc"} gateway-1 | {"time_local":"07/Oct/2024:09:33:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6? HTTP/1.1","status": "200","body_bytes_sent":"1339","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ee97f92253bce520797e3fd4bf5f55fc"} device-1 | {"level":"info","message":"GET /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6? 200 21ms","method":"GET","requestID":"ee97f92253bce520797e3fd4bf5f55fc","responseTime":21,"status":200,"url":"/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3fe385c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"3fe385c0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.064453,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3fe3d3e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3fe3d3e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY","level":"info","message":"auth send jwt","requestID":"c8e43cc877596e8262169931a94b12ac"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.422378411Z"}]},"request_id":"09a1f688-19c0-4ac4-b344-eb66caf5971d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.8950477} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c8e43cc877596e8262169931a94b12ac","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3fe385c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.474950860Z"}]},"request_id":"152575d7-8c0b-4ed4-92c0-8d6564ad5c34","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.8965867} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c8e43cc877596e8262169931a94b12ac"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3fe3d3e0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3fe385c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6? 200 19ms","method":"GET","requestID":"3fe385c0-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3fe3d3e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83? 200 18ms","method":"GET","requestID":"3fe3d3e0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Building connection plan","requestID":"3dd40d1f39881e8568d61ebec4de4862"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"361cf600-fe7e-48ec-ab2e-52e76f2da661"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"6fbdc9ad-788e-4862-b26e-99a55aeaa6ca"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"15a72cde-a2f9-4b51-998f-fe1f25bcfbd4"}]},"level":"info","message":"Built pairwise service configurations","requestID":"3dd40d1f39881e8568d61ebec4de4862"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.918253,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c8e43cc877596e8262169931a94b12ac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"3fe70830-848f-11ef-8885-7d835fc08c91"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"c8e43cc877596e8262169931a94b12ac","responseTime":9,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"3fe70830-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"3fe70830-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2?id=bdd0d20b-4442-49b6-913c-8da6ca5328fe","ws://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2?id=3d528a16-9353-4aa9-ac23-cf757a4c9014"]},"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/6b50c4fe-eaca-4501-9d83-8f55876746d6"},{"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/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"3dd40d1f39881e8568d61ebec4de4862"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:43.474950860Z"}]},"request_id":"787be819-1ce6-46a0-8faa-47ef8bc85121","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.9108436} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"3fe7a470-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c8e43cc877596e8262169931a94b12ac","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:45Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c8e43cc877596e8262169931a94b12ac"} gateway-1 | {"time_local":"07/Oct/2024:09:33:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83? 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":"c8e43cc877596e8262169931a94b12ac"} device-1 | {"level":"info","message":"GET /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83? 200 19ms","method":"GET","requestID":"c8e43cc877596e8262169931a94b12ac","responseTime":19,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.476221,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:45Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3fe7a470-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293625,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNX0.uTVsSQ5rbM2KCnWfEW6CnGOj5FDsr1jxYXJKd0kKSbY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3fe7a470-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"9af9c289-5dba-417a-8642-2240d515344a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.9284754} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"67b1208b-7d15-46f5-8951-d7b46f888352","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293625.9286044} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"3fe7a470-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"3fe7a470-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"3fe7a470-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3'","requestID":"3fe7a470-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3'","requestID":"3fe7a470-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"3fe7a470-848f-11ef-9233-95baf63f17e0"} 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":"3fe7a470-848f-11ef-9233-95baf63f17e0","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":"3fe7a470-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"71d3f95c-12ca-4662-a0a7-8a566a3492e3","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"3fede600-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"bdd0d20b-4442-49b6-913c-8da6ca5328fe\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\"","requestID":"3fede600-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"3fede600-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"36ad402cf17f1f1ee2e15ef53593757a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"36ad402cf17f1f1ee2e15ef53593757a","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"3fee3420-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\"","requestID":"3fee3420-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"3fee3420-848f-11ef-8885-7d835fc08c91"} 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/6b50c4fe-eaca-4501-9d83-8f55876746d6"},{"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/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3"}}},"level":"info","message":"received a callback","requestID":"36ad402cf17f1f1ee2e15ef53593757a"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} device-1 | {"data":{"peerconnection":"71d3f95c-12ca-4662-a0a7-8a566a3492e3","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"36ad402cf17f1f1ee2e15ef53593757a","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"36ad402cf17f1f1ee2e15ef53593757a"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} device-1 | {"data":{"peerconnection":"71d3f95c-12ca-4662-a0a7-8a566a3492e3","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"3dd40d1f39881e8568d61ebec4de4862"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3ff49cc0-848f-11ef-9233-95baf63f17e0"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"71d3f95c-12ca-4662-a0a7-8a566a3492e3","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a0bea6fb847a9b33bbb9eeccd20c8b28","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a0bea6fb847a9b33bbb9eeccd20c8b28","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"49b53750-36f1-4da6-a194-dc32ccc497e7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.010342} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.593752,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:46Z"} 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/6b50c4fe-eaca-4501-9d83-8f55876746d6"},{"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/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3"}}},"level":"info","message":"received a callback","requestID":"a0bea6fb847a9b33bbb9eeccd20c8b28"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3ff49cc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ff49cc0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"3ff7aa00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3ff49cc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6/signaling 200 23ms","method":"POST","requestID":"3ff49cc0-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F71d3f95c-12ca-4662-a0a7-8a566a3492e3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"03769171-320a-4002-b727-00d8ad3d886e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.020723} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.59151,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3ff7aa00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3","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":"3ff89460-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ff7aa00-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:46Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"3ff7aa00-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2ae523a6-bec8-4701-82a5-54b94a2f7747","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.0263634} device-1 | {"level":"info","message":"GET /peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3 200 10ms","method":"GET","requestID":"3ff7aa00-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.510675,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3ff89460-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3ff89460-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3ff89460-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/signaling 200 8ms","method":"POST","requestID":"3ff89460-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"a0bea6fb847a9b33bbb9eeccd20c8b28","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.036","http_referrer":"","http_user_agent":"node-fetch","requestID":"a0bea6fb847a9b33bbb9eeccd20c8b28"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3ffba1a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b088a7ac-a2aa-422e-8b4a-8aa5f9ca45a9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.0475621} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.123371,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3ffba1a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","object_type":"device","rebac_allow":false,"scope_allow":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":"3ffba1a0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3ffba1a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6/signaling 200 10ms","method":"POST","requestID":"3ffba1a0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"3ffd7660-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5876144d-63f9-4726-8e7f-45629dca0e7b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.0587687} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.574955,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3ffd7660-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","object_type":"device","rebac_allow":false,"scope_allow":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":"3ffd7660-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"3ffd7660-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/signaling 200 9ms","method":"POST","requestID":"3ffd7660-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNn0.rhc0hasuJ31AWTeRlR57n3bPOkFno1-gzCFxNyzUV7g","level":"info","message":"auth send jwt","requestID":"3f4ac8d72fbc7ec68a9fe03e7620f9d6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3f4ac8d72fbc7ec68a9fe03e7620f9d6","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d","requestID":"3f4ac8d72fbc7ec68a9fe03e7620f9d6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.127974,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3f4ac8d72fbc7ec68a9fe03e7620f9d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293626,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNn0.rhc0hasuJ31AWTeRlR57n3bPOkFno1-gzCFxNyzUV7g"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3f4ac8d72fbc7ec68a9fe03e7620f9d6","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d","requestID":"3f4ac8d72fbc7ec68a9fe03e7620f9d6"} gateway-1 | {"time_local":"07/Oct/2024:09:33:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d HTTP/1.1","status": "200","body_bytes_sent":"855","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3f4ac8d72fbc7ec68a9fe03e7620f9d6"} experiment-1 | {"level":"info","message":"GET /experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d 200 14ms","method":"GET","requestID":"3f4ac8d72fbc7ec68a9fe03e7620f9d6","responseTime":14,"status":200,"url":"/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNn0.rhc0hasuJ31AWTeRlR57n3bPOkFno1-gzCFxNyzUV7g","level":"info","message":"auth send jwt","requestID":"f2f7976f9623ee13c4fc3e23f687b7f5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f2f7976f9623ee13c4fc3e23f687b7f5","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d","requestID":"f2f7976f9623ee13c4fc3e23f687b7f5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.094435,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f2f7976f9623ee13c4fc3e23f687b7f5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293626,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNn0.rhc0hasuJ31AWTeRlR57n3bPOkFno1-gzCFxNyzUV7g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f2f7976f9623ee13c4fc3e23f687b7f5","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Attempting to finish experiment","requestID":"f2f7976f9623ee13c4fc3e23f687b7f5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"40329020-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.338549,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40329020-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293626,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNn0.rhc0hasuJ31AWTeRlR57n3bPOkFno1-gzCFxNyzUV7g"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40329020-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2?id=bdd0d20b-4442-49b6-913c-8da6ca5328fe HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.467","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"dae7514e093b711343d13a7ac406d0cc"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"bdd0d20b-4442-49b6-913c-8da6ca5328fe\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"bdd0d20b-4442-49b6-913c-8da6ca5328fe\" from room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3","device":"7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","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/71d3f95c-12ca-4662-a0a7-8a566a3492e3' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" in room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3' to 'http://localhost/callbacks/experiment'"} gateway-1 | {"time_local":"07/Oct/2024:09:33:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2?id=3d528a16-9353-4aa9-ac23-cf757a4c9014 HTTP/1.1","status": "101","body_bytes_sent":"1203025","request_time":"0.468","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"709d43fd1d78a35b72803e5c7607bd10"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"3d528a16-9353-4aa9-ac23-cf757a4c9014\" from room \"http://localhost/rooms/976755db-ac22-40fc-8961-8e0d42bfdfe2\""} device-1 | {"data":{"peerconnection":"71d3f95c-12ca-4662-a0a7-8a566a3492e3","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5adc170a9592b6e8fb53b7274c748fd1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5adc170a9592b6e8fb53b7274c748fd1","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"04e46e22d5f2df26500f97ccc37e5baa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/6b50c4fe-eaca-4501-9d83-8f55876746d6"},{"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/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3"}}},"level":"info","message":"received a callback","requestID":"5adc170a9592b6e8fb53b7274c748fd1"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"04e46e22d5f2df26500f97ccc37e5baa","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F71d3f95c-12ca-4662-a0a7-8a566a3492e3': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F71d3f95c-12ca-4662-a0a7-8a566a3492e3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"57c6e12f-e29c-446c-bada-b2bdaa156767","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.427883} 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/6b50c4fe-eaca-4501-9d83-8f55876746d6"},{"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/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3"}}},"level":"info","message":"received a callback","requestID":"04e46e22d5f2df26500f97ccc37e5baa"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5981034-b5cf-47b6-bbf7-61a5226a5eaa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.4282076} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"40329020-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"71d3f95c-12ca-4662-a0a7-8a566a3492e3","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"40329020-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3 204 42ms","method":"DELETE","requestID":"40329020-848f-11ef-9233-95baf63f17e0","responseTime":42,"status":204,"url":"/peerconnections/71d3f95c-12ca-4662-a0a7-8a566a3492e3"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"},"level":"info","message":"Successfully finished experiment","requestID":"f2f7976f9623ee13c4fc3e23f687b7f5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"403c5420-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b50c4fe-eaca-4501-9d83-8f55876746d6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4efa1761-660b-40da-a6a8-32d939659128","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.4725616} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.5288,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"403c5420-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6","object_type":"device","rebac_allow":false,"scope_allow":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":"403c5420-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"403c5420-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6b50c4fe-eaca-4501-9d83-8f55876746d6/signaling 200 12ms","method":"POST","requestID":"403c5420-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/6b50c4fe-eaca-4501-9d83-8f55876746d6/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ff7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"eff82fc2-ded8-4678-8dbb-8315db1636c4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.4795208} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d6340a98-ee5a-4f04-84ad-03a36682ed5e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.4796538} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"403e9e10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"f2f7976f9623ee13c4fc3e23f687b7f5","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7bc6e274-abcd-4580-a77e-e74a10bfe56f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.485288} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.820929,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"403e9e10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"403e9e10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"403e9e10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/signaling 200 9ms","method":"POST","requestID":"403e9e10-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d","requestID":"f2f7976f9623ee13c4fc3e23f687b7f5"} gateway-1 | {"time_local":"07/Oct/2024:09:33:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d 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":"f2f7976f9623ee13c4fc3e23f687b7f5"} experiment-1 | {"level":"info","message":"DELETE /experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d 204 160ms","method":"DELETE","requestID":"f2f7976f9623ee13c4fc3e23f687b7f5","responseTime":160,"status":204,"url":"/experiments/f7ca6104-2d4e-4ec4-9a05-6a316d6fcc8d"} gateway-1 | {"time_local":"07/Oct/2024:09:33:46 +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.535","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"400003dc468b8c6ff76cdb7cb55f689d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"5adc170a9592b6e8fb53b7274c748fd1","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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":"5adc170a9592b6e8fb53b7274c748fd1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"04e46e22d5f2df26500f97ccc37e5baa","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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":"04e46e22d5f2df26500f97ccc37e5baa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNn0.rhc0hasuJ31AWTeRlR57n3bPOkFno1-gzCFxNyzUV7g","level":"info","message":"auth send jwt","requestID":"114730975ac39b7a407cf0fdfde6a47f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"114730975ac39b7a407cf0fdfde6a47f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"114730975ac39b7a407cf0fdfde6a47f"} gateway-1 | {"time_local":"07/Oct/2024:09:33:46 +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.017","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"aace8fc9c9ed3beb34a36f017628a7d4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.886189,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"114730975ac39b7a407cf0fdfde6a47f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293626,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNn0.rhc0hasuJ31AWTeRlR57n3bPOkFno1-gzCFxNyzUV7g"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"114730975ac39b7a407cf0fdfde6a47f","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/6b50c4fe-eaca-4501-9d83-8f55876746d6' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/7fc6e2f9-cc53-4f83-8586-99ffcb63fa83' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"362650b6-1fec-4416-aa6c-0f6fa2f8b1a7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.5786688} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"114730975ac39b7a407cf0fdfde6a47f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5b1acf30-c215-45f3-be19-9084b64bef6e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.5837936} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"114730975ac39b7a407cf0fdfde6a47f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"814a3757-37ec-4c4e-8d69-7c50efbde619","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.5935216} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a9fe32b-ee58-40a3-93c5-ccc1697a9fb0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.593772} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"114730975ac39b7a407cf0fdfde6a47f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.593501243Z"}]},"request_id":"ba7dc4ba-84c1-4c09-8613-1039c97520ab","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.598682} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"114730975ac39b7a407cf0fdfde6a47f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"114730975ac39b7a407cf0fdfde6a47f"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"114730975ac39b7a407cf0fdfde6a47f","responseTime":48,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"114730975ac39b7a407cf0fdfde6a47f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNn0.rhc0hasuJ31AWTeRlR57n3bPOkFno1-gzCFxNyzUV7g","level":"info","message":"auth send jwt","requestID":"7153f606f5318aee79038b73defb7a35"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7153f606f5318aee79038b73defb7a35","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7153f606f5318aee79038b73defb7a35"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.683034,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7153f606f5318aee79038b73defb7a35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293626,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyNn0.rhc0hasuJ31AWTeRlR57n3bPOkFno1-gzCFxNyzUV7g"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7153f606f5318aee79038b73defb7a35","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d0511eab-4132-4aa7-b2c0-6030f5d6a61f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.6284025} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7153f606f5318aee79038b73defb7a35","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30e05ecc-df83-4db7-953f-e09e986308bf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.6330724} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7153f606f5318aee79038b73defb7a35","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"1453a621-42ce-427d-80e3-135e8a2e38ec","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.6431339} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bc6aa71f-05d2-48dd-bf56-d0fea40b27b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.6433914} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"7153f606f5318aee79038b73defb7a35","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.643110313Z"}]},"request_id":"6fca9c77-d82a-4ae1-92ef-494ee180c9b5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293626.6479561} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7153f606f5318aee79038b73defb7a35","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7153f606f5318aee79038b73defb7a35"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"7153f606f5318aee79038b73defb7a35","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7153f606f5318aee79038b73defb7a35"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A","level":"info","message":"auth send jwt","requestID":"1044269a22971ac438f9c0c08c2ef0b6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"1044269a22971ac438f9c0c08c2ef0b6","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A","level":"info","message":"auth send jwt","requestID":"e619ea61c5baaf681454d1d3160101d5"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1044269a22971ac438f9c0c08c2ef0b6"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e619ea61c5baaf681454d1d3160101d5","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e619ea61c5baaf681454d1d3160101d5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.969106,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1044269a22971ac438f9c0c08c2ef0b6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1044269a22971ac438f9c0c08c2ef0b6","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.510711,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e619ea61c5baaf681454d1d3160101d5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e619ea61c5baaf681454d1d3160101d5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.593501243Z"}]},"request_id":"2d7208b1-65b6-44c9-8a3d-a5a1d7b36732","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.1238303} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1044269a22971ac438f9c0c08c2ef0b6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.643110313Z"}]},"request_id":"c0de1f79-8d9d-4f26-81f0-83f9978598fc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.1246192} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e619ea61c5baaf681454d1d3160101d5","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"71e74e36-3ee5-45b9-970e-77fc68c84329","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.1281462} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1044269a22971ac438f9c0c08c2ef0b6","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"059bf6a3-dcb2-4d7a-b9e3-e055a52a8978","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.1295311} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"e619ea61c5baaf681454d1d3160101d5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.643110313Z"}]},"request_id":"526a860c-9673-4110-9d96-725aac4aba26","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.1323195} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e619ea61c5baaf681454d1d3160101d5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e619ea61c5baaf681454d1d3160101d5"} device-1 | {"level":"info","message":"PATCH /devices/75560961-941c-441d-be0c-ed39e479aa78 200 18ms","method":"PATCH","requestID":"e619ea61c5baaf681454d1d3160101d5","responseTime":18,"status":200,"url":"/devices/75560961-941c-441d-be0c-ed39e479aa78"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/75560961-941c-441d-be0c-ed39e479aa78 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"e619ea61c5baaf681454d1d3160101d5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A","level":"info","message":"auth send jwt","requestID":"abc609c1ee40e7f34f9fc626082291b9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"abc609c1ee40e7f34f9fc626082291b9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"abc609c1ee40e7f34f9fc626082291b9"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.593501243Z"}]},"request_id":"d81bcf91-4291-4411-8ba3-da66f18fc6e1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.143002} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1044269a22971ac438f9c0c08c2ef0b6","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.930652,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1044269a22971ac438f9c0c08c2ef0b6"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"abc609c1ee40e7f34f9fc626082291b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"abc609c1ee40e7f34f9fc626082291b9","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"PATCH /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf 200 31ms","method":"PATCH","requestID":"1044269a22971ac438f9c0c08c2ef0b6","responseTime":31,"status":200,"url":"/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1044269a22971ac438f9c0c08c2ef0b6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A","level":"info","message":"auth send jwt","requestID":"db1eea280d7657057fd3cf1b8073d09d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"db1eea280d7657057fd3cf1b8073d09d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"db1eea280d7657057fd3cf1b8073d09d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.287484,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"db1eea280d7657057fd3cf1b8073d09d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"db1eea280d7657057fd3cf1b8073d09d","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"abc609c1ee40e7f34f9fc626082291b9"} device-1 | {"level":"info","message":"POST /devices/75560961-941c-441d-be0c-ed39e479aa78/websocket 200 16ms","method":"POST","requestID":"abc609c1ee40e7f34f9fc626082291b9","responseTime":16,"status":200,"url":"/devices/75560961-941c-441d-be0c-ed39e479aa78/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/75560961-941c-441d-be0c-ed39e479aa78/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.9","requestID":"abc609c1ee40e7f34f9fc626082291b9"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"db1eea280d7657057fd3cf1b8073d09d"} device-1 | {"level":"info","message":"POST /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf/websocket 200 14ms","method":"POST","requestID":"db1eea280d7657057fd3cf1b8073d09d","responseTime":14,"status":200,"url":"/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf/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.9","requestID":"db1eea280d7657057fd3cf1b8073d09d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A","level":"info","message":"auth send jwt","requestID":"4af5eaa145e35effdd8f8643300f9825"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4af5eaa145e35effdd8f8643300f9825","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4af5eaa145e35effdd8f8643300f9825"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.117474,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4af5eaa145e35effdd8f8643300f9825","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4af5eaa145e35effdd8f8643300f9825","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.593501243Z"}]},"request_id":"3ee91745-0a34-4a2a-9bc9-8137e96e297c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.197797} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4af5eaa145e35effdd8f8643300f9825","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4af5eaa145e35effdd8f8643300f9825"} device-1 | {"level":"info","message":"GET /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf? 200 12ms","method":"GET","requestID":"4af5eaa145e35effdd8f8643300f9825","responseTime":12,"status":200,"url":"/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf? 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":"4af5eaa145e35effdd8f8643300f9825"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A","level":"info","message":"auth send jwt","requestID":"2c24f42b691df84144d5b68ff270260d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2c24f42b691df84144d5b68ff270260d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2c24f42b691df84144d5b68ff270260d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.628692,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2c24f42b691df84144d5b68ff270260d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2c24f42b691df84144d5b68ff270260d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.643110313Z"}]},"request_id":"dc97c5bc-f1fc-4020-ba27-cd41b7a5bdce","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.2143893} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2c24f42b691df84144d5b68ff270260d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2c24f42b691df84144d5b68ff270260d"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/75560961-941c-441d-be0c-ed39e479aa78? 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":"2c24f42b691df84144d5b68ff270260d"} device-1 | {"level":"info","message":"GET /devices/75560961-941c-441d-be0c-ed39e479aa78? 200 12ms","method":"GET","requestID":"2c24f42b691df84144d5b68ff270260d","responseTime":12,"status":200,"url":"/devices/75560961-941c-441d-be0c-ed39e479aa78?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A","level":"info","message":"auth send jwt","requestID":"e4e3369dececfa9fb89dce05520e54f8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e4e3369dececfa9fb89dce05520e54f8","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e4e3369dececfa9fb89dce05520e54f8"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.248969,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e4e3369dececfa9fb89dce05520e54f8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e4e3369dececfa9fb89dce05520e54f8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Attempting to run experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Attempting to book experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Successfully booked experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40b554b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40b5a2d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.901193,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40b554b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"40b554b0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.906587,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40b5a2d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"40b5a2d0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.593501243Z"}]},"request_id":"5d0f0bc5-1a96-4b52-a51d-c0b7f8e879e5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.2706928} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"40b554b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.643110313Z"}]},"request_id":"81cd72c1-6c4e-4566-8eb1-f6d80b0ea428","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.2719662} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"40b5a2d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40b554b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf? 200 19ms","method":"GET","requestID":"40b554b0-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40b5a2d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/75560961-941c-441d-be0c-ed39e479aa78? 200 18ms","method":"GET","requestID":"40b5a2d0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/75560961-941c-441d-be0c-ed39e479aa78?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Setting up experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Successfully set up experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40c0c660-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40c11480-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40c162a0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Successfully running experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.607602,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40c0c660-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"40c0c660-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.265315,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:39158","level":"info","msg":"Received request.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40c11480-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"40c11480-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39158","level":"info","msg":"Sent response.","req_id":594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.702495,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"263db693-b834-456a-bc27-17caa18b8cf9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.3502855} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40c162a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","object_type":"device","rebac_allow":false,"scope_allow":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":"40c162a0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.593501243Z"}]},"request_id":"0e3ba6e0-8c95-459d-801e-94497c9ccb9f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.353605} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40c162a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"40c0c660-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.643110313Z"}]},"request_id":"dba4b3bc-cecd-4b1b-8592-10616f878e36","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.3584394} device-1 | {"level":"info","message":"POST /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf/signaling 200 20ms","method":"POST","requestID":"40c162a0-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"40c11480-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40c53330-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40c0c660-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf? 200 34ms","method":"GET","requestID":"40c0c660-848f-11ef-9233-95baf63f17e0","responseTime":34,"status":200,"url":"/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40c11480-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} device-1 | {"level":"info","message":"GET /devices/75560961-941c-441d-be0c-ed39e479aa78? 200 33ms","method":"GET","requestID":"40c11480-848f-11ef-9233-95baf63f17e0","responseTime":33,"status":200,"url":"/devices/75560961-941c-441d-be0c-ed39e479aa78?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe714b611-6dfa-40fd-9ae4-53c301a6a7a5#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe714b611-6dfa-40fd-9ae4-53c301a6a7a5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"0cd45957-b451-4ea5-9d61-fca0e60f3db2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.3699565} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3207084-76fb-4bb3-9b52-545c65259023","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.3701642} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"af534348-468d-42fa-95c0-5777948d9424","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.3709896} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.029459,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40c6b9d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40c53330-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","object_type":"device","rebac_allow":false,"scope_allow":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":"40c53330-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"e4e3369dececfa9fb89dce05520e54f8","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40c53330-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/75560961-941c-441d-be0c-ed39e479aa78/signaling 200 15ms","method":"POST","requestID":"40c53330-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/75560961-941c-441d-be0c-ed39e479aa78/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"15950cd4-ea8c-4b8a-b54b-ff77e4e1adcf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.3802097} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.910929,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40c6b9d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","object_type":"device","rebac_allow":false,"scope_allow":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":"40c6b9d0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e4e3369dececfa9fb89dce05520e54f8"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"786","request_time":"0.165","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e4e3369dececfa9fb89dce05520e54f8"} experiment-1 | {"level":"info","message":"POST /experiments? 201 161ms","method":"POST","requestID":"e4e3369dececfa9fb89dce05520e54f8","responseTime":161,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40c6b9d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf/signaling 200 13ms","method":"POST","requestID":"40c6b9d0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40c92ad0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A","level":"info","message":"auth send jwt","requestID":"20f00fa6944f35c88675c2294232cc69"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"20f00fa6944f35c88675c2294232cc69","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20f00fa6944f35c88675c2294232cc69"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"30799067-b1cf-45a7-b17d-71e8b7a1059a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.3970463} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.351657,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40c92ad0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","object_type":"device","rebac_allow":false,"scope_allow":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":"40c92ad0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.93777,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"20f00fa6944f35c88675c2294232cc69","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"20f00fa6944f35c88675c2294232cc69","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40c92ad0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/75560961-941c-441d-be0c-ed39e479aa78/signaling 200 15ms","method":"POST","requestID":"40c92ad0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/75560961-941c-441d-be0c-ed39e479aa78/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.593501243Z"}]},"request_id":"d399566a-7bd5-40e8-9ade-52688f8020e4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.404527} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"20f00fa6944f35c88675c2294232cc69","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40cbe9f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"40cc1100-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20f00fa6944f35c88675c2294232cc69"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.81492,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf? 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":"20f00fa6944f35c88675c2294232cc69"} device-1 | {"level":"info","message":"GET /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf? 200 18ms","method":"GET","requestID":"20f00fa6944f35c88675c2294232cc69","responseTime":18,"status":200,"url":"/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40cbe9f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"40cbe9f0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.029658,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40cc1100-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"40cc1100-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A","level":"info","message":"auth send jwt","requestID":"20dcf02ea09f7a07884dab92f24b14b0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.593501243Z"}]},"request_id":"5e009ae9-b6ea-43bb-93b6-f00a95056d34","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.416943} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"20dcf02ea09f7a07884dab92f24b14b0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"20dcf02ea09f7a07884dab92f24b14b0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"40cbe9f0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.643110313Z"}]},"request_id":"468bd083-297e-4393-b05f-5405d5f8e415","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.4181287} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"40cc1100-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.334567,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"20dcf02ea09f7a07884dab92f24b14b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"20dcf02ea09f7a07884dab92f24b14b0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40cbe9f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf? 200 19ms","method":"GET","requestID":"40cbe9f0-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"40cc1100-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/75560961-941c-441d-be0c-ed39e479aa78? 200 19ms","method":"GET","requestID":"40cc1100-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/75560961-941c-441d-be0c-ed39e479aa78?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:46.643110313Z"}]},"request_id":"6e96da0d-fc7a-4b4b-83bc-0a9b1856e2eb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.4272635} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Building connection plan","requestID":"e4e3369dececfa9fb89dce05520e54f8"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{},"role":"device1","serviceId":"file_producer","uuid":"87026e51-bb47-4046-82cf-bce04602b833"},{"config":{},"role":"device2","serviceId":"file_consumer","uuid":"858d1762-1542-4a89-a51a-18c777bbec88"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/file","uuid":"9175b6ff-1eb5-48db-89d2-a5f5e7911670"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e4e3369dececfa9fb89dce05520e54f8"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"20dcf02ea09f7a07884dab92f24b14b0","responseTime":3,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"40cf6c60-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"40cf6c60-848f-11ef-8885-7d835fc08c91"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"20dcf02ea09f7a07884dab92f24b14b0"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/75560961-941c-441d-be0c-ed39e479aa78? 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":"20dcf02ea09f7a07884dab92f24b14b0"} forwarding-1 | {"level":"info","message":"POST /rooms 201 2ms","method":"POST","requestID":"40cf6c60-848f-11ef-8885-7d835fc08c91","responseTime":2,"status":201,"url":"/rooms"} device-1 | {"level":"info","message":"GET /devices/75560961-941c-441d-be0c-ed39e479aa78? 200 14ms","method":"GET","requestID":"20dcf02ea09f7a07884dab92f24b14b0","responseTime":14,"status":200,"url":"/devices/75560961-941c-441d-be0c-ed39e479aa78?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c?id=b680a234-e153-413c-b3e6-53978ee26324","ws://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c?id=41c8cf4c-2670-41b1-ba2a-a92d6b1d8f5a"]},"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/75560961-941c-441d-be0c-ed39e479aa78"},{"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/3befdf71-1825-4d7b-8a3f-3879e2e49dbf"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"e4e3369dececfa9fb89dce05520e54f8"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"40d008a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.039099,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40d008a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"40d008a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"5ca4d255-ea0d-4637-be36-e87fb0cb883e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.4474502} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c092caa-bac9-43a2-ac74-3fe3241ecc2d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.4478374} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"40d008a0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"40d008a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"40d008a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171'","requestID":"40d008a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171'","requestID":"40d008a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"40d008a0-848f-11ef-9233-95baf63f17e0"} 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":"40d008a0-848f-11ef-9233-95baf63f17e0","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":"40d008a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5a7f0774-ba46-406c-8d68-4f4eb6eac171","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"40d5adf0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\"","requestID":"40d5adf0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"40d5adf0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"40d5fc10-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"41c8cf4c-2670-41b1-ba2a-a92d6b1d8f5a\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\"","requestID":"40d5fc10-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"40d5fc10-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"22c6c51e80cefd9736eec933c1d9a8c4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"22c6c51e80cefd9736eec933c1d9a8c4","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connecting","url":"http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78"},{"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/3befdf71-1825-4d7b-8a3f-3879e2e49dbf"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171"}}},"level":"info","message":"received a callback","requestID":"22c6c51e80cefd9736eec933c1d9a8c4"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} device-1 | {"data":{"peerconnection":"5a7f0774-ba46-406c-8d68-4f4eb6eac171","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 \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 16ms","method":"POST","requestID":"22c6c51e80cefd9736eec933c1d9a8c4","responseTime":16,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.019","http_referrer":"","http_user_agent":"node-fetch","requestID":"22c6c51e80cefd9736eec933c1d9a8c4"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} device-1 | {"data":{"peerconnection":"5a7f0774-ba46-406c-8d68-4f4eb6eac171","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e4e3369dececfa9fb89dce05520e54f8"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40db5340-848f-11ef-9233-95baf63f17e0"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5a7f0774-ba46-406c-8d68-4f4eb6eac171","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c766c3c904656775d02ecbccb5920dfd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"081a5b20-d454-4a88-8bdf-abb8a9f04e8c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.5137808} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c766c3c904656775d02ecbccb5920dfd","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.182165,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} 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/75560961-941c-441d-be0c-ed39e479aa78"},{"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/3befdf71-1825-4d7b-8a3f-3879e2e49dbf"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171"}}},"level":"info","message":"received a callback","requestID":"c766c3c904656775d02ecbccb5920dfd"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40db5340-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","object_type":"device","rebac_allow":false,"scope_allow":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":"40db5340-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"40dd7620-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40db5340-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5a7f0774-ba46-406c-8d68-4f4eb6eac171","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"30552ea9-97a1-4048-a104-f1d577215f93","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.525956} device-1 | {"level":"info","message":"POST /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf/signaling 200 18ms","method":"POST","requestID":"40db5340-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.569716,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40dd7620-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171","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":"40dd7620-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40de8790-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"40dd7620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171 200 9ms","method":"GET","requestID":"40dd7620-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0012064-94c2-49a4-89b2-84d4ab336798","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.5335307} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.349886,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40de8790-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40de8790-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40de8790-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/75560961-941c-441d-be0c-ed39e479aa78/signaling 200 8ms","method":"POST","requestID":"40de8790-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/75560961-941c-441d-be0c-ed39e479aa78/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"c766c3c904656775d02ecbccb5920dfd","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"c766c3c904656775d02ecbccb5920dfd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40e11fa0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4e930f14-5a1c-4fd7-b7b2-743cfeb08850","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.5509627} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.419621,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40e11fa0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40e11fa0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40e11fa0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/75560961-941c-441d-be0c-ed39e479aa78/signaling 200 9ms","method":"POST","requestID":"40e11fa0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/75560961-941c-441d-be0c-ed39e479aa78/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"40e2a640-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c29bcb56-c534-4ac7-8384-7f25539bfc61","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.5603502} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.206792,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40e2a640-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40e2a640-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"40e2a640-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf/signaling 200 8ms","method":"POST","requestID":"40e2a640-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A","level":"info","message":"auth send jwt","requestID":"cc55492f4041bcc09b35b5dad4980c41"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"cc55492f4041bcc09b35b5dad4980c41","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5","requestID":"cc55492f4041bcc09b35b5dad4980c41"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.503257,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"cc55492f4041bcc09b35b5dad4980c41","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"cc55492f4041bcc09b35b5dad4980c41","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5","requestID":"cc55492f4041bcc09b35b5dad4980c41"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5 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":"cc55492f4041bcc09b35b5dad4980c41"} experiment-1 | {"level":"info","message":"GET /experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5 200 16ms","method":"GET","requestID":"cc55492f4041bcc09b35b5dad4980c41","responseTime":16,"status":200,"url":"/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A","level":"info","message":"auth send jwt","requestID":"775bbc80ec8397bbe640bb2e10aae17c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"775bbc80ec8397bbe640bb2e10aae17c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5","requestID":"775bbc80ec8397bbe640bb2e10aae17c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.204837,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"775bbc80ec8397bbe640bb2e10aae17c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"775bbc80ec8397bbe640bb2e10aae17c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Attempting to finish experiment","requestID":"775bbc80ec8397bbe640bb2e10aae17c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"40f9d7c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.214161,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40f9d7c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"40f9d7c0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/db2d756e-43de-4945-b0e8-3d8abd09952c?id=41c8cf4c-2670-41b1-ba2a-a92d6b1d8f5a HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.251","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"0f1299c3c5fbd05a6ce16d35b0c04331"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/db2d756e-43de-4945-b0e8-3d8abd09952c?id=b680a234-e153-413c-b3e6-53978ee26324 HTTP/1.1","status": "101","body_bytes_sent":"1203023","request_time":"0.251","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"5c89a320e1e800dc19c4a6fbc15a1903"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"41c8cf4c-2670-41b1-ba2a-a92d6b1d8f5a\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"41c8cf4c-2670-41b1-ba2a-a92d6b1d8f5a\" from room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b680a234-e153-413c-b3e6-53978ee26324\" in room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b680a234-e153-413c-b3e6-53978ee26324\" from room \"http://localhost/rooms/db2d756e-43de-4945-b0e8-3d8abd09952c\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"5a7f0774-ba46-406c-8d68-4f4eb6eac171","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d97406307e87a42b964af3de235ef00f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d97406307e87a42b964af3de235ef00f","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a6029b83-d817-4245-9132-afe5407b8e78","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.728469} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5a7f0774-ba46-406c-8d68-4f4eb6eac171': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F5a7f0774-ba46-406c-8d68-4f4eb6eac171","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"72a36bed-7a66-4e6c-b552-8535191b0bf0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.7285583} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"916381950950b2bc53b97852c61d6923","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/75560961-941c-441d-be0c-ed39e479aa78"},{"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/3befdf71-1825-4d7b-8a3f-3879e2e49dbf"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171"}}},"level":"info","message":"received a callback","requestID":"d97406307e87a42b964af3de235ef00f"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"916381950950b2bc53b97852c61d6923","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"40f9d7c0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"remoteServiceDescription":{"serviceDirection":"producer","serviceId":"file_producer","serviceType":"https://api.goldi-labs.de/serviceTypes/file","supportedConnectionTypes":["websocket"]},"remoteServiceId":"file_producer","serviceId":"file_consumer","serviceType":"https://api.goldi-labs.de/serviceTypes/file"}]},"status":"connected","url":"http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78"},{"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/3befdf71-1825-4d7b-8a3f-3879e2e49dbf"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171"}}},"level":"info","message":"received a callback","requestID":"916381950950b2bc53b97852c61d6923"} device-1 | {"data":{"peerconnection":"5a7f0774-ba46-406c-8d68-4f4eb6eac171","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"40f9d7c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171 204 38ms","method":"DELETE","requestID":"40f9d7c0-848f-11ef-9233-95baf63f17e0","responseTime":38,"status":204,"url":"/peerconnections/5a7f0774-ba46-406c-8d68-4f4eb6eac171"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"},"level":"info","message":"Successfully finished experiment","requestID":"775bbc80ec8397bbe640bb2e10aae17c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4101ee10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F75560961-941c-441d-be0c-ed39e479aa78","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bd45f93a-a6b4-4dc2-b3af-cb0c8e5bd47f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.7678392} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.585407,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4101ee10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/75560961-941c-441d-be0c-ed39e479aa78","object_type":"device","rebac_allow":false,"scope_allow":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":"4101ee10-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe714b611-6dfa-40fd-9ae4-53c301a6a7a5': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fe714b611-6dfa-40fd-9ae4-53c301a6a7a5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"eef79a0f-a514-4a1a-b7b2-e4f8de0dd4f2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.7699757} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3a304617-5944-474e-9e32-21bb1b99e53e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.7704215} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"775bbc80ec8397bbe640bb2e10aae17c","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4101ee10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/75560961-941c-441d-be0c-ed39e479aa78/signaling 200 13ms","method":"POST","requestID":"4101ee10-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/75560961-941c-441d-be0c-ed39e479aa78/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"410410f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3befdf71-1825-4d7b-8a3f-3879e2e49dbf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"70a02a4b-4605-4183-8cb5-86f85d071215","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.7804947} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.439682,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"410410f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"410410f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"410410f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf/signaling 200 9ms","method":"POST","requestID":"410410f0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/3befdf71-1825-4d7b-8a3f-3879e2e49dbf/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5","requestID":"775bbc80ec8397bbe640bb2e10aae17c"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5 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":"775bbc80ec8397bbe640bb2e10aae17c"} experiment-1 | {"level":"info","message":"DELETE /experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5 204 138ms","method":"DELETE","requestID":"775bbc80ec8397bbe640bb2e10aae17c","responseTime":138,"status":204,"url":"/experiments/e714b611-6dfa-40fd-9ae4-53c301a6a7a5"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +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.665","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a46f1e9b77ddf8c04e2fbae2d86354e0"} gateway-1 | {"time_local":"07/Oct/2024:09:33:47 +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.673","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"08bd7f148bfbb25846815870f3539ba2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 104ms","method":"POST","requestID":"d97406307e87a42b964af3de235ef00f","responseTime":104,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.107","http_referrer":"","http_user_agent":"node-fetch","requestID":"d97406307e87a42b964af3de235ef00f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A","level":"info","message":"auth send jwt","requestID":"1b340f546eed1f712f09ccee54550c60"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1b340f546eed1f712f09ccee54550c60","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/75560961-941c-441d-be0c-ed39e479aa78' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"1b340f546eed1f712f09ccee54550c60"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 110ms","method":"POST","requestID":"916381950950b2bc53b97852c61d6923","responseTime":110,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.115","http_referrer":"","http_user_agent":"node-fetch","requestID":"916381950950b2bc53b97852c61d6923"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.743967,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1b340f546eed1f712f09ccee54550c60","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1b340f546eed1f712f09ccee54550c60","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/3befdf71-1825-4d7b-8a3f-3879e2e49dbf' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0175fe83-f676-4abb-90de-8a9d4d94238a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.8655298} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b340f546eed1f712f09ccee54550c60","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5426bb8-f9be-4cac-b120-8a2ea93bed1a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.8708737} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1b340f546eed1f712f09ccee54550c60","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"1510f475-acca-43a7-abe1-f6fa7faa23ef","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.8822067} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"149d6fb5-1407-417b-8f09-0361aadb680c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.8824618} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"1b340f546eed1f712f09ccee54550c60","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.882174586Z"}]},"request_id":"dc2e51d5-93e8-4322-8969-2b329eb3bcdd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.886646} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1b340f546eed1f712f09ccee54550c60","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1b340f546eed1f712f09ccee54550c60"} device-1 | {"level":"info","message":"POST /devices? 201 50ms","method":"POST","requestID":"1b340f546eed1f712f09ccee54550c60","responseTime":50,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1b340f546eed1f712f09ccee54550c60"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A","level":"info","message":"auth send jwt","requestID":"2985f4ecc2d1f6b1fa1f7029f0f79801"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2985f4ecc2d1f6b1fa1f7029f0f79801","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2985f4ecc2d1f6b1fa1f7029f0f79801"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.785462,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2985f4ecc2d1f6b1fa1f7029f0f79801","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293627,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyN30.ukJkdGLaxVfS_Rira03ZGZdVXTVrm7Z4f_08-RIpO_A"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2985f4ecc2d1f6b1fa1f7029f0f79801","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fe6ad957-d968-421a-bb82-0b0ca96ce844","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.9116848} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2985f4ecc2d1f6b1fa1f7029f0f79801","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d6026949-fc42-4a36-b43b-c115ead7ff30","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.9166617} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2985f4ecc2d1f6b1fa1f7029f0f79801","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"269ac383-573c-40db-b4b3-1570e5e4f184","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.9310935} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"32749a3c-1335-40cd-a53b-df7f13460ed4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.9313693} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"2985f4ecc2d1f6b1fa1f7029f0f79801","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.931069447Z"}]},"request_id":"21dd444c-a5d5-4442-9f5f-31ea3175ca31","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293627.9354923} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2985f4ecc2d1f6b1fa1f7029f0f79801","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2985f4ecc2d1f6b1fa1f7029f0f79801"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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":"2985f4ecc2d1f6b1fa1f7029f0f79801"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"2985f4ecc2d1f6b1fa1f7029f0f79801","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"898000264a8d9d676ea2b4357ac4dd34","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"898000264a8d9d676ea2b4357ac4dd34","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"26c8c85000a6714757dbed5ca10b9fba","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"07/Oct/2024:09:33:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ff49c732-cb7f-455f-9608-ae1749eec680/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":"898000264a8d9d676ea2b4357ac4dd34"} device-1 | {"level":"info","message":"OPTIONS /devices/ff49c732-cb7f-455f-9608-ae1749eec680/websocket 200 1ms","method":"OPTIONS","requestID":"898000264a8d9d676ea2b4357ac4dd34","responseTime":1,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680/websocket"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"26c8c85000a6714757dbed5ca10b9fba","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/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":"26c8c85000a6714757dbed5ca10b9fba"} device-1 | {"level":"info","message":"OPTIONS /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/websocket 200 0ms","method":"OPTIONS","requestID":"26c8c85000a6714757dbed5ca10b9fba","responseTime":0,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyOX0.S6wPVxdsFYvhdbpG9wJZoMzPCDWSIaUtJRIHi_tV_4U","level":"info","message":"auth send jwt","requestID":"fbf09b4ac30f389a39d5a8b482baee9e"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"fbf09b4ac30f389a39d5a8b482baee9e","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyOX0.S6wPVxdsFYvhdbpG9wJZoMzPCDWSIaUtJRIHi_tV_4U","level":"info","message":"auth send jwt","requestID":"e59f94234c54fddb1e1fa0978cefcd62"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"fbf09b4ac30f389a39d5a8b482baee9e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e59f94234c54fddb1e1fa0978cefcd62","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e59f94234c54fddb1e1fa0978cefcd62"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.758639,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:49Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"fbf09b4ac30f389a39d5a8b482baee9e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293629,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyOX0.S6wPVxdsFYvhdbpG9wJZoMzPCDWSIaUtJRIHi_tV_4U"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fbf09b4ac30f389a39d5a8b482baee9e","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.097648,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:49Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e59f94234c54fddb1e1fa0978cefcd62","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293629,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYyOX0.S6wPVxdsFYvhdbpG9wJZoMzPCDWSIaUtJRIHi_tV_4U"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"e59f94234c54fddb1e1fa0978cefcd62","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e59f94234c54fddb1e1fa0978cefcd62"} gateway-1 | {"time_local":"07/Oct/2024:09:33:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e59f94234c54fddb1e1fa0978cefcd62"} device-1 | {"level":"info","message":"POST /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/websocket 200 15ms","method":"POST","requestID":"e59f94234c54fddb1e1fa0978cefcd62","responseTime":15,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"fbf09b4ac30f389a39d5a8b482baee9e"} gateway-1 | {"time_local":"07/Oct/2024:09:33:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ff49c732-cb7f-455f-9608-ae1749eec680/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":"fbf09b4ac30f389a39d5a8b482baee9e"} device-1 | {"level":"info","message":"POST /devices/ff49c732-cb7f-455f-9608-ae1749eec680/websocket 200 28ms","method":"POST","requestID":"fbf09b4ac30f389a39d5a8b482baee9e","responseTime":28,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e5f1cd031bb5e584d08542cdcbc0a5f5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e5f1cd031bb5e584d08542cdcbc0a5f5","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb? 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":"e5f1cd031bb5e584d08542cdcbc0a5f5"} device-1 | {"level":"info","message":"OPTIONS /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb? 200 0ms","method":"OPTIONS","requestID":"e5f1cd031bb5e584d08542cdcbc0a5f5","responseTime":0,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4d7b53ba2bb88421af327aa2d51f683d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4d7b53ba2bb88421af327aa2d51f683d","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ff49c732-cb7f-455f-9608-ae1749eec680? 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":"4d7b53ba2bb88421af327aa2d51f683d"} device-1 | {"level":"info","message":"OPTIONS /devices/ff49c732-cb7f-455f-9608-ae1749eec680? 200 1ms","method":"OPTIONS","requestID":"4d7b53ba2bb88421af327aa2d51f683d","responseTime":1,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M","level":"info","message":"auth send jwt","requestID":"4a02430f3f7b04d2c523548fccf061b1"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"4a02430f3f7b04d2c523548fccf061b1","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4a02430f3f7b04d2c523548fccf061b1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M","level":"info","message":"auth send jwt","requestID":"e9b960090d6c30327a4844d51e23e9d7"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.876102,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e9b960090d6c30327a4844d51e23e9d7","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4a02430f3f7b04d2c523548fccf061b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4a02430f3f7b04d2c523548fccf061b1","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e9b960090d6c30327a4844d51e23e9d7"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.397321,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e9b960090d6c30327a4844d51e23e9d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e9b960090d6c30327a4844d51e23e9d7","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.931069447Z"}]},"request_id":"9238de1a-18d2-4e92-9caf-083eaa919892","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.0217295} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4a02430f3f7b04d2c523548fccf061b1","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30df1592-b93b-4770-93a2-3b06e216f702","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.031403} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"4a02430f3f7b04d2c523548fccf061b1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.882174586Z"}]},"request_id":"2145e96b-9734-45f3-9582-bd0e312a6f87","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.03423} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e9b960090d6c30327a4844d51e23e9d7","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e0ccc225-b4d9-4b2f-9465-1a40ae29425f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.041276} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"e9b960090d6c30327a4844d51e23e9d7","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.931069447Z"}]},"request_id":"0719e036-0f81-43fb-aa37-9702e298e58c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.0467227} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4a02430f3f7b04d2c523548fccf061b1","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4a02430f3f7b04d2c523548fccf061b1"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.050","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4a02430f3f7b04d2c523548fccf061b1"} device-1 | {"level":"info","message":"PATCH /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb? 200 43ms","method":"PATCH","requestID":"4a02430f3f7b04d2c523548fccf061b1","responseTime":43,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.882174586Z"}]},"request_id":"b72d250d-d5b2-4985-a69e-11eed03211c6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.0648384} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e9b960090d6c30327a4844d51e23e9d7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e9b960090d6c30327a4844d51e23e9d7"} device-1 | {"level":"info","message":"PATCH /devices/ff49c732-cb7f-455f-9608-ae1749eec680? 200 54ms","method":"PATCH","requestID":"e9b960090d6c30327a4844d51e23e9d7","responseTime":54,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ff49c732-cb7f-455f-9608-ae1749eec680? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"e9b960090d6c30327a4844d51e23e9d7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M","level":"info","message":"auth send jwt","requestID":"a27657b47812505234061eadf1fc4129"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a27657b47812505234061eadf1fc4129","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a27657b47812505234061eadf1fc4129"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.357587,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a27657b47812505234061eadf1fc4129","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a27657b47812505234061eadf1fc4129","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.882174586Z"}]},"request_id":"c2f44e0f-814e-404f-bf2f-161a13168f68","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.091947} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a27657b47812505234061eadf1fc4129","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a27657b47812505234061eadf1fc4129"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ff49c732-cb7f-455f-9608-ae1749eec680? 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":"a27657b47812505234061eadf1fc4129"} device-1 | {"level":"info","message":"GET /devices/ff49c732-cb7f-455f-9608-ae1749eec680? 200 16ms","method":"GET","requestID":"a27657b47812505234061eadf1fc4129","responseTime":16,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M","level":"info","message":"auth send jwt","requestID":"fb3a502dd72ae492ac71c389f1c0e54d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fb3a502dd72ae492ac71c389f1c0e54d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fb3a502dd72ae492ac71c389f1c0e54d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.218962,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"fb3a502dd72ae492ac71c389f1c0e54d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fb3a502dd72ae492ac71c389f1c0e54d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.931069447Z"}]},"request_id":"2df400e7-0bfb-4977-8e53-83b99dbcd0c1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.114722} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fb3a502dd72ae492ac71c389f1c0e54d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fb3a502dd72ae492ac71c389f1c0e54d"} device-1 | {"level":"info","message":"GET /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb? 200 16ms","method":"GET","requestID":"fb3a502dd72ae492ac71c389f1c0e54d","responseTime":16,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb? 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":"fb3a502dd72ae492ac71c389f1c0e54d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M","level":"info","message":"auth send jwt","requestID":"623c31aaa990178ae2575eb84d347d88"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"623c31aaa990178ae2575eb84d347d88","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"623c31aaa990178ae2575eb84d347d88"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.280311,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"623c31aaa990178ae2575eb84d347d88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"623c31aaa990178ae2575eb84d347d88","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Attempting to run experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Attempting to book experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Successfully booked experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4271aab0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4271d1c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.606451,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4271aab0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4271aab0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.690561,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4271d1c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"4271d1c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.882174586Z"}]},"request_id":"44ab3500-4a18-4697-b650-cde0a1a7d6e2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.1787589} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4271aab0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.931069447Z"}]},"request_id":"23213d6f-52e0-4e28-b88e-51e4ca3588a7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.1802368} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4271d1c0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4271aab0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ff49c732-cb7f-455f-9608-ae1749eec680? 200 14ms","method":"GET","requestID":"4271aab0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4271d1c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb? 200 14ms","method":"GET","requestID":"4271d1c0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Setting up experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Successfully locked booking for experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Attempting to update booking for experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Successfully updated booking for experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Successfully set up experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"427aab60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"427ad270-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"427b2090-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Successfully running experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.9065,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"427aab60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"427aab60-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.740031,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:39158","level":"info","msg":"Received request.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"427ad270-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"427ad270-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39158","level":"info","msg":"Sent response.","req_id":626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.663379,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f36e0618-58a0-4afd-98d4-e1ea3c092dd8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.2402744} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"427b2090-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","object_type":"device","rebac_allow":false,"scope_allow":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":"427b2090-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.882174586Z"}]},"request_id":"b8d578c1-8a37-4e06-815b-5d4f8155c61b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.2428982} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"427b2090-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ff49c732-cb7f-455f-9608-ae1749eec680/signaling 200 14ms","method":"POST","requestID":"427b2090-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"427aab60-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.931069447Z"}]},"request_id":"7fe5e9ea-d44a-4b13-9a26-0854794682ad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.2468452} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"427ad270-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"427db8a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"427aab60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ff49c732-cb7f-455f-9608-ae1749eec680? 200 24ms","method":"GET","requestID":"427aab60-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"427ad270-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb? 200 24ms","method":"GET","requestID":"427ad270-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"427eca10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa3729c6-1886-4651-98e0-a478dd803511","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.2553833} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.651164,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"427db8a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","object_type":"device","rebac_allow":false,"scope_allow":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":"427db8a0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94bc469a-ecfd-4cab-b892-3c7f605206d3#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94bc469a-ecfd-4cab-b892-3c7f605206d3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"c52ddd96-0731-43cb-bc1c-17f03056f357","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.257625} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ffa4fbb-c9e4-436d-bcf0-139d8b53eab2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.2579482} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"427db8a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"623c31aaa990178ae2575eb84d347d88","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"POST /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/signaling 200 11ms","method":"POST","requestID":"427db8a0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f86177fb-20eb-4422-8fcc-dba00bfff213","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.2654076} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.556335,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"427eca10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","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/94bc469a-ecfd-4cab-b892-3c7f605206d3","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"623c31aaa990178ae2575eb84d347d88"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"427eca10-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"623c31aaa990178ae2575eb84d347d88"} experiment-1 | {"level":"info","message":"POST /experiments? 201 139ms","method":"POST","requestID":"623c31aaa990178ae2575eb84d347d88","responseTime":139,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"427eca10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ff49c732-cb7f-455f-9608-ae1749eec680/signaling 200 12ms","method":"POST","requestID":"427eca10-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M","level":"info","message":"auth send jwt","requestID":"d6b0ad988391e8b1708eab5db0b29c35"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4280ecf0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d6b0ad988391e8b1708eab5db0b29c35","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d6b0ad988391e8b1708eab5db0b29c35"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.629607,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d6b0ad988391e8b1708eab5db0b29c35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d6b0ad988391e8b1708eab5db0b29c35","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fa308bfa-46ac-49fa-8aff-b71e304dbaff","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.2766647} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.284879,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4280ecf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","object_type":"device","rebac_allow":false,"scope_allow":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":"4280ecf0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4280ecf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/signaling 200 10ms","method":"POST","requestID":"4280ecf0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.882174586Z"}]},"request_id":"827423c0-1da8-4847-b434-2804b8f8d6c4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.2809966} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d6b0ad988391e8b1708eab5db0b29c35","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4282c1b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"42830fd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d6b0ad988391e8b1708eab5db0b29c35"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ff49c732-cb7f-455f-9608-ae1749eec680? 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":"d6b0ad988391e8b1708eab5db0b29c35"} device-1 | {"level":"info","message":"GET /devices/ff49c732-cb7f-455f-9608-ae1749eec680? 200 14ms","method":"GET","requestID":"d6b0ad988391e8b1708eab5db0b29c35","responseTime":14,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.886556,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4282c1b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4282c1b0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.979242,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"42830fd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"42830fd0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M","level":"info","message":"auth send jwt","requestID":"45c70a4bcaacafe3940281f88ccb746f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"45c70a4bcaacafe3940281f88ccb746f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"45c70a4bcaacafe3940281f88ccb746f"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.882174586Z"}]},"request_id":"017d6c55-a68b-4968-a09f-5bd0f9c04b57","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.2911873} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4282c1b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.931069447Z"}]},"request_id":"8ffed990-ee03-4685-87b0-17e9605a111f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.2926533} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"42830fd0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.665985,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45c70a4bcaacafe3940281f88ccb746f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"45c70a4bcaacafe3940281f88ccb746f","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4282c1b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ff49c732-cb7f-455f-9608-ae1749eec680? 200 16ms","method":"GET","requestID":"4282c1b0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"42830fd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb? 200 15ms","method":"GET","requestID":"42830fd0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:47.931069447Z"}]},"request_id":"baff4a14-77aa-4b3a-be66-995419cd8e36","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.300436} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Building connection plan","requestID":"623c31aaa990178ae2575eb84d347d88"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"45c70a4bcaacafe3940281f88ccb746f","responseTime":3,"status":200,"url":"/relations/query"} 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":"a80f02e5-03ce-49a1-a6af-2f8862f7cc04"},{"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":"bd2f51fc-3528-4fa3-a5dc-399bf9443f50"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"7965ac39-be21-42a8-87a9-b23d600a4745"}]},"level":"info","message":"Built pairwise service configurations","requestID":"623c31aaa990178ae2575eb84d347d88"} 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/ff49c732-cb7f-455f-9608-ae1749eec680"},{"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/92ad1f60-8afa-4dd0-880b-73efef84feeb"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"623c31aaa990178ae2575eb84d347d88"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"4285a7e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"45c70a4bcaacafe3940281f88ccb746f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb? 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":"45c70a4bcaacafe3940281f88ccb746f"} device-1 | {"level":"info","message":"GET /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb? 200 13ms","method":"GET","requestID":"45c70a4bcaacafe3940281f88ccb746f","responseTime":13,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.768442,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4285a7e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4285a7e0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"4477d683-5a95-4690-978b-1c58c9c771c0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.3133585} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5407929d-eb39-4e3e-bd8c-82622ea7c870","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.3135667} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4285a7e0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"4285a7e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"4285a7e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa'","requestID":"4285a7e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa'","requestID":"4285a7e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"4285a7e0-848f-11ef-9233-95baf63f17e0"} 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":"4285a7e0-848f-11ef-9233-95baf63f17e0","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":"4285a7e0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"623c31aaa990178ae2575eb84d347d88"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"428d7010-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1481074b-e3e2-432e-ad6a-f3f317443f68","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.3573105} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.203146,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"428d7010-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","object_type":"device","rebac_allow":false,"scope_allow":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":"428d7010-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"428d7010-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ff49c732-cb7f-455f-9608-ae1749eec680/signaling 200 8ms","method":"POST","requestID":"428d7010-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"428ef6b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"084349df-ddf9-46f4-9432-37ea98ee4422","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.3670423} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.215237,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"428ef6b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"428ef6b0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"ff49c732-cb7f-455f-9608-ae1749eec680","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ff49c732-cb7f-455f-9608-ae1749eec680","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"428ef6b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/signaling 200 9ms","method":"POST","requestID":"428ef6b0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/signaling"} device-1 | {"device":"92ad1f60-8afa-4dd0-880b-73efef84feeb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"92ad1f60-8afa-4dd0-880b-73efef84feeb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 6947583866614005266 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:sttf\r\na=ice-pwd:WLxGfQmSIbfgX9p8FFix7EbH\r\na=ice-options:trickle\r\na=fingerprint:sha-256 8E:D8:CF:F5:CF:AC:35:3F:AA:F9:A6:DE:8E:0D:15:5C:91:A9:95:06:E9:C1:D5:D0:24:94:A0:30:1B:AB:E1:1D\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"92ad1f60-8afa-4dd0-880b-73efef84feeb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8210842528210828239 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:kO4V\r\na=ice-pwd:UGftaCoJlwBg7jHO2mAF7R+Q\r\na=ice-options:trickle\r\na=fingerprint:sha-256 BD:05:BE:ED:B5:64:1E:86:EA:63:78:1C:AA:E1:8F:56:F1:40:6A:69:1C:94:B9:B4:01:C6:74:AC:2C:46:79:A7\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"ff49c732-cb7f-455f-9608-ae1749eec680","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2540625876 1 udp 2113937151 a137ae17-98b7-4e28-aa93-4b60976a665d.local 34446 typ host generation 0 ufrag kO4V network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ff49c732-cb7f-455f-9608-ae1749eec680","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:71663303 1 udp 1677729535 141.24.211.56 34446 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag kO4V network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ff49c732-cb7f-455f-9608-ae1749eec680","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/ff49c732-cb7f-455f-9608-ae1749eec680'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680'"} device-1 | {"content":{"candidate":"candidate:3514977463 1 udp 2113937151 e846a9bb-afff-466e-8e5b-f504f2fcfa2f.local 58102 typ host generation 0 ufrag sttf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"92ad1f60-8afa-4dd0-880b-73efef84feeb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1437542088 1 udp 1677729535 141.24.211.56 58102 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag sttf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"92ad1f60-8afa-4dd0-880b-73efef84feeb","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/92ad1f60-8afa-4dd0-880b-73efef84feeb'"} device-1 | {"device":"92ad1f60-8afa-4dd0-880b-73efef84feeb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"ff49c732-cb7f-455f-9608-ae1749eec680","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"ff49c732-cb7f-455f-9608-ae1749eec680","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/a423f26d-20c0-4377-aab4-bdad523fe4fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a423f26d-20c0-4377-aab4-bdad523fe4fa","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"92ad1f60-8afa-4dd0-880b-73efef84feeb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"92ad1f60-8afa-4dd0-880b-73efef84feeb","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":[{"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/ff49c732-cb7f-455f-9608-ae1749eec680"},{"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/92ad1f60-8afa-4dd0-880b-73efef84feeb"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa"}}},"level":"info","message":"received a callback","requestID":"9f27d413a71da0d7e098b92cca20f2b9"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9f27d413a71da0d7e098b92cca20f2b9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9f27d413a71da0d7e098b92cca20f2b9","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"ff49c732-cb7f-455f-9608-ae1749eec680","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":"9f27d413a71da0d7e098b92cca20f2b9","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"9f27d413a71da0d7e098b92cca20f2b9"} device-1 | {"device":"ff49c732-cb7f-455f-9608-ae1749eec680","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"a423f26d-20c0-4377-aab4-bdad523fe4fa","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"a423f26d-20c0-4377-aab4-bdad523fe4fa","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/a423f26d-20c0-4377-aab4-bdad523fe4fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a423f26d-20c0-4377-aab4-bdad523fe4fa","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5e386d278ec242d4ee05ce5f49fbe864","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5e386d278ec242d4ee05ce5f49fbe864","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680"},{"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/92ad1f60-8afa-4dd0-880b-73efef84feeb"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa"}}},"level":"info","message":"received a callback","requestID":"5e386d278ec242d4ee05ce5f49fbe864"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"429b52c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa423f26d-20c0-4377-aab4-bdad523fe4fa","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bcbd1e8f-1047-42fe-921f-a1da8142551a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.4482782} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.343759,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"429b52c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa","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":"429b52c0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"429b52c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa 200 7ms","method":"GET","requestID":"429b52c0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"5e386d278ec242d4ee05ce5f49fbe864","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"5e386d278ec242d4ee05ce5f49fbe864"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"429f4a60-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d086f8ab-1bda-4aa6-b807-ff52e5bab0d3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.4745514} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.1764,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"429f4a60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"429f4a60-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"429f4a60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ff49c732-cb7f-455f-9608-ae1749eec680/signaling 200 8ms","method":"POST","requestID":"429f4a60-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"42a0d100-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54a5164d-2016-412d-8cb3-c5d97ede9bad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.484059} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.139349,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"42a0d100-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","object_type":"device","rebac_allow":false,"scope_allow":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":"42a0d100-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"42a0d100-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/signaling 200 7ms","method":"POST","requestID":"42a0d100-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M","level":"info","message":"auth send jwt","requestID":"1f94f760751c84a9688f9b7cb616c21c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1f94f760751c84a9688f9b7cb616c21c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3","requestID":"1f94f760751c84a9688f9b7cb616c21c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.405969,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1f94f760751c84a9688f9b7cb616c21c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1f94f760751c84a9688f9b7cb616c21c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3","requestID":"1f94f760751c84a9688f9b7cb616c21c"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3 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":"1f94f760751c84a9688f9b7cb616c21c"} experiment-1 | {"level":"info","message":"GET /experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3 200 10ms","method":"GET","requestID":"1f94f760751c84a9688f9b7cb616c21c","responseTime":10,"status":200,"url":"/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M","level":"info","message":"auth send jwt","requestID":"94066dab093b5058640781ff5fb0d57e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"94066dab093b5058640781ff5fb0d57e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3","requestID":"94066dab093b5058640781ff5fb0d57e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.753113,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"94066dab093b5058640781ff5fb0d57e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"94066dab093b5058640781ff5fb0d57e","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Attempting to finish experiment","requestID":"94066dab093b5058640781ff5fb0d57e"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"42ab5850-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.294924,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"42ab5850-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"42ab5850-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa","device":"ff49c732-cb7f-455f-9608-ae1749eec680","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa","device":"92ad1f60-8afa-4dd0-880b-73efef84feeb","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/a423f26d-20c0-4377-aab4-bdad523fe4fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a423f26d-20c0-4377-aab4-bdad523fe4fa","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa423f26d-20c0-4377-aab4-bdad523fe4fa': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa423f26d-20c0-4377-aab4-bdad523fe4fa","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"e6bf808d-1846-4643-b0f9-686cd62c153c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.5682225} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"66c434c3-a911-4e5e-b757-4ea9c9a0c44a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.5685122} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"42ab5850-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9124778daf8bf05f62fdb5d905e14b1e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9124778daf8bf05f62fdb5d905e14b1e","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4a11ed5a4c0a5cd2bddf9ba491441017","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/ff49c732-cb7f-455f-9608-ae1749eec680"},{"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/92ad1f60-8afa-4dd0-880b-73efef84feeb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa"}}},"level":"info","message":"received a callback","requestID":"9124778daf8bf05f62fdb5d905e14b1e"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4a11ed5a4c0a5cd2bddf9ba491441017","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/ff49c732-cb7f-455f-9608-ae1749eec680"},{"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/92ad1f60-8afa-4dd0-880b-73efef84feeb"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa"}}},"level":"info","message":"received a callback","requestID":"4a11ed5a4c0a5cd2bddf9ba491441017"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"42ab5850-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa 204 38ms","method":"DELETE","requestID":"42ab5850-848f-11ef-9233-95baf63f17e0","responseTime":38,"status":204,"url":"/peerconnections/a423f26d-20c0-4377-aab4-bdad523fe4fa"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"},"level":"info","message":"Successfully finished experiment","requestID":"94066dab093b5058640781ff5fb0d57e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"42b3bcc0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fff49c732-cb7f-455f-9608-ae1749eec680","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"925f3269-788e-4eea-bd83-0898e2fdd8a6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.6091173} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.179711,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"42b3bcc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ff49c732-cb7f-455f-9608-ae1749eec680","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"42b3bcc0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94bc469a-ecfd-4cab-b892-3c7f605206d3': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F94bc469a-ecfd-4cab-b892-3c7f605206d3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"724b75c5-ba04-446f-a4be-9f0c5aae7c42","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.613714} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"964f67e6-d10d-477b-a6b1-f0f1c5b91117","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.6139054} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"42b3bcc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ff49c732-cb7f-455f-9608-ae1749eec680/signaling 200 10ms","method":"POST","requestID":"42b3bcc0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/ff49c732-cb7f-455f-9608-ae1749eec680/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"94066dab093b5058640781ff5fb0d57e","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"42b5b890-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F92ad1f60-8afa-4dd0-880b-73efef84feeb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"48b4df7c-65fd-47c4-af40-2233ddfd6b8d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.6218727} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.234876,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"42b5b890-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"42b5b890-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"42b5b890-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/signaling 200 9ms","method":"POST","requestID":"42b5b890-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3","requestID":"94066dab093b5058640781ff5fb0d57e"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"94066dab093b5058640781ff5fb0d57e"} experiment-1 | {"level":"info","message":"DELETE /experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3 204 128ms","method":"DELETE","requestID":"94066dab093b5058640781ff5fb0d57e","responseTime":128,"status":204,"url":"/experiments/94bc469a-ecfd-4cab-b892-3c7f605206d3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 98ms","method":"POST","requestID":"9124778daf8bf05f62fdb5d905e14b1e","responseTime":98,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.101","http_referrer":"","http_user_agent":"node-fetch","requestID":"9124778daf8bf05f62fdb5d905e14b1e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 97ms","method":"POST","requestID":"4a11ed5a4c0a5cd2bddf9ba491441017","responseTime":97,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.101","http_referrer":"","http_user_agent":"node-fetch","requestID":"4a11ed5a4c0a5cd2bddf9ba491441017"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M","level":"info","message":"auth send jwt","requestID":"21d8554b5fbf3fe194867d964266d295"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"21d8554b5fbf3fe194867d964266d295","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"21d8554b5fbf3fe194867d964266d295"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.819494,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"21d8554b5fbf3fe194867d964266d295","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"21d8554b5fbf3fe194867d964266d295","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +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.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":"72d5cfd15c05501df3960aae7e37bf18"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3316","request_time":"0.714","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"597de9f2013a0b05684b8a984f76661b"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/92ad1f60-8afa-4dd0-880b-73efef84feeb' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"6254bb4c-28d4-4c6a-bd03-8b995c014750","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.6861842} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"21d8554b5fbf3fe194867d964266d295","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7d7ec29-3474-4e03-bbf5-3bbd6c8c6482","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.690936} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"21d8554b5fbf3fe194867d964266d295","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/ff49c732-cb7f-455f-9608-ae1749eec680' closed"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"09c9825c-5f0d-4a3a-9616-9541a7dfb68c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.7029328} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3a388bfc-38b6-4305-8936-1a1df48f3212","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.7032154} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"21d8554b5fbf3fe194867d964266d295","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.702910341Z"}]},"request_id":"8fc999c9-0f74-470d-96eb-66b10666cfb1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.7068849} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"21d8554b5fbf3fe194867d964266d295","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"21d8554b5fbf3fe194867d964266d295"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"21d8554b5fbf3fe194867d964266d295","responseTime":37,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"21d8554b5fbf3fe194867d964266d295"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M","level":"info","message":"auth send jwt","requestID":"2206b5d1c23f23829d11914c18dd33c4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2206b5d1c23f23829d11914c18dd33c4","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"2206b5d1c23f23829d11914c18dd33c4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.892927,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:50Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2206b5d1c23f23829d11914c18dd33c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293630,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMH0.OWoiRw3A738X1EkvrPB_4zDCMOMMqeojGez16WcGr7M"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2206b5d1c23f23829d11914c18dd33c4","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4a4b1451-14de-4842-b16f-3fea9c10c71c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.7314918} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2206b5d1c23f23829d11914c18dd33c4","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3087a289-8134-4c06-8b42-8a4d11cd7d6c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.7361598} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"2206b5d1c23f23829d11914c18dd33c4","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"b76230c1-8e41-44e3-91b3-152508aefa18","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.7456412} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e31df40-0d14-4a47-9b53-65029bb795dd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.7457168} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"2206b5d1c23f23829d11914c18dd33c4","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.745620100Z"}]},"request_id":"7e1dedf0-b9e5-4121-8b62-1a1dd61a3610","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293630.749474} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2206b5d1c23f23829d11914c18dd33c4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2206b5d1c23f23829d11914c18dd33c4"} gateway-1 | {"time_local":"07/Oct/2024:09:33:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2206b5d1c23f23829d11914c18dd33c4"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"2206b5d1c23f23829d11914c18dd33c4","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5f7d55678ac4220b47461138e0f0a17b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5f7d55678ac4220b47461138e0f0a17b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/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":"5f7d55678ac4220b47461138e0f0a17b"} device-1 | {"level":"info","message":"OPTIONS /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/websocket 200 1ms","method":"OPTIONS","requestID":"5f7d55678ac4220b47461138e0f0a17b","responseTime":1,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs","level":"info","message":"auth send jwt","requestID":"576f5fca7f861dd5a6b4137ada0ab82d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"576f5fca7f861dd5a6b4137ada0ab82d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"576f5fca7f861dd5a6b4137ada0ab82d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.686205,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"576f5fca7f861dd5a6b4137ada0ab82d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"576f5fca7f861dd5a6b4137ada0ab82d","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9d2ce3de92a7143ccd1d15d982a97ea6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9d2ce3de92a7143ccd1d15d982a97ea6","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/539849a0-1f86-4b13-a434-f88c392776b3/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":"9d2ce3de92a7143ccd1d15d982a97ea6"} device-1 | {"level":"info","message":"OPTIONS /devices/539849a0-1f86-4b13-a434-f88c392776b3/websocket 200 1ms","method":"OPTIONS","requestID":"9d2ce3de92a7143ccd1d15d982a97ea6","responseTime":1,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs","level":"info","message":"auth send jwt","requestID":"5567ebc843ff21321d5919b2de8effac"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5567ebc843ff21321d5919b2de8effac","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5567ebc843ff21321d5919b2de8effac"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"576f5fca7f861dd5a6b4137ada0ab82d"} gateway-1 | {"time_local":"07/Oct/2024:09:33:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/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":"576f5fca7f861dd5a6b4137ada0ab82d"} device-1 | {"level":"info","message":"POST /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/websocket 200 23ms","method":"POST","requestID":"576f5fca7f861dd5a6b4137ada0ab82d","responseTime":23,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/websocket"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.432518,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5567ebc843ff21321d5919b2de8effac","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5567ebc843ff21321d5919b2de8effac","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5567ebc843ff21321d5919b2de8effac"} gateway-1 | {"time_local":"07/Oct/2024:09:33:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/539849a0-1f86-4b13-a434-f88c392776b3/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":"5567ebc843ff21321d5919b2de8effac"} device-1 | {"level":"info","message":"POST /devices/539849a0-1f86-4b13-a434-f88c392776b3/websocket 200 26ms","method":"POST","requestID":"5567ebc843ff21321d5919b2de8effac","responseTime":26,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fb288d5101dccc501d6e58cca15236d9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fb288d5101dccc501d6e58cca15236d9","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef? 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":"fb288d5101dccc501d6e58cca15236d9"} device-1 | {"level":"info","message":"OPTIONS /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef? 200 1ms","method":"OPTIONS","requestID":"fb288d5101dccc501d6e58cca15236d9","responseTime":1,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0cedd7eebd971cc56da5cdd707ae347b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0cedd7eebd971cc56da5cdd707ae347b","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs","level":"info","message":"auth send jwt","requestID":"175d4c5f7dbb6960537677767418ef9c"} gateway-1 | {"time_local":"07/Oct/2024:09:33:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/539849a0-1f86-4b13-a434-f88c392776b3? 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":"0cedd7eebd971cc56da5cdd707ae347b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"175d4c5f7dbb6960537677767418ef9c","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/539849a0-1f86-4b13-a434-f88c392776b3? 200 1ms","method":"OPTIONS","requestID":"0cedd7eebd971cc56da5cdd707ae347b","responseTime":1,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3?"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"175d4c5f7dbb6960537677767418ef9c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.981995,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:52Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs","level":"info","message":"auth send jwt","requestID":"af42210fecaa49f7f207b4a42b971ded"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"af42210fecaa49f7f207b4a42b971ded","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"175d4c5f7dbb6960537677767418ef9c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"175d4c5f7dbb6960537677767418ef9c","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"af42210fecaa49f7f207b4a42b971ded"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.240321,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"af42210fecaa49f7f207b4a42b971ded","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"af42210fecaa49f7f207b4a42b971ded","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.702910341Z"}]},"request_id":"2116c2d4-c576-4cd1-800d-608bc201fad8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293632.8619218} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"175d4c5f7dbb6960537677767418ef9c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.745620100Z"}]},"request_id":"e8071d7f-03c4-4597-b44b-be13af57ee6a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293632.8650386} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"af42210fecaa49f7f207b4a42b971ded","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"48e71c08-bff5-4d0a-ab94-0275547a0a94","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293632.8673096} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"175d4c5f7dbb6960537677767418ef9c","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b7e65678-686d-4c9d-a18c-f35cf5f42328","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293632.871883} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"af42210fecaa49f7f207b4a42b971ded","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.702910341Z"}]},"request_id":"850f3f31-7854-4032-a0a9-c150d38de42d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293632.883127} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"175d4c5f7dbb6960537677767418ef9c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"175d4c5f7dbb6960537677767418ef9c"} device-1 | {"level":"info","message":"PATCH /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef? 200 38ms","method":"PATCH","requestID":"175d4c5f7dbb6960537677767418ef9c","responseTime":38,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef? 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":"175d4c5f7dbb6960537677767418ef9c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.745620100Z"}]},"request_id":"3410745a-34db-4821-9ff0-d1560c7c1dc3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293632.8949723} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"af42210fecaa49f7f207b4a42b971ded","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"af42210fecaa49f7f207b4a42b971ded"} gateway-1 | {"time_local":"07/Oct/2024:09:33:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/539849a0-1f86-4b13-a434-f88c392776b3? 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":"af42210fecaa49f7f207b4a42b971ded"} device-1 | {"level":"info","message":"PATCH /devices/539849a0-1f86-4b13-a434-f88c392776b3? 200 44ms","method":"PATCH","requestID":"af42210fecaa49f7f207b4a42b971ded","responseTime":44,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs","level":"info","message":"auth send jwt","requestID":"69506e7d321d1e3cac8a936291e763ed"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"69506e7d321d1e3cac8a936291e763ed","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"69506e7d321d1e3cac8a936291e763ed"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.901757,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"69506e7d321d1e3cac8a936291e763ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"69506e7d321d1e3cac8a936291e763ed","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.702910341Z"}]},"request_id":"d118d268-1044-4721-af96-3b86ed55ada6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293632.9191096} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"69506e7d321d1e3cac8a936291e763ed","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"69506e7d321d1e3cac8a936291e763ed"} gateway-1 | {"time_local":"07/Oct/2024:09:33:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef? 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":"69506e7d321d1e3cac8a936291e763ed"} device-1 | {"level":"info","message":"GET /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef? 200 15ms","method":"GET","requestID":"69506e7d321d1e3cac8a936291e763ed","responseTime":15,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs","level":"info","message":"auth send jwt","requestID":"ab100102850bdb6f11dfa2a6440d56fc"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ab100102850bdb6f11dfa2a6440d56fc","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ab100102850bdb6f11dfa2a6440d56fc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.991591,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ab100102850bdb6f11dfa2a6440d56fc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ab100102850bdb6f11dfa2a6440d56fc","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.745620100Z"}]},"request_id":"db2a8fa4-a2c9-4ca2-b23a-404fc2cba26a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293632.9423833} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ab100102850bdb6f11dfa2a6440d56fc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ab100102850bdb6f11dfa2a6440d56fc"} device-1 | {"level":"info","message":"GET /devices/539849a0-1f86-4b13-a434-f88c392776b3? 200 18ms","method":"GET","requestID":"ab100102850bdb6f11dfa2a6440d56fc","responseTime":18,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/539849a0-1f86-4b13-a434-f88c392776b3? 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":"ab100102850bdb6f11dfa2a6440d56fc"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs","level":"info","message":"auth send jwt","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.229013,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Attempting to run experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Attempting to book experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Successfully booked experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"441f0c90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"441f33a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.633944,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"441f0c90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"441f0c90-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.732014,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"441f33a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"441f33a0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.702910341Z"}]},"request_id":"d29e0bec-4958-45a4-9266-350233f23fd9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293632.993921} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"441f0c90-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.745620100Z"}]},"request_id":"383492d0-124f-4309-9a67-a6539486ce14","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293632.9952855} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"441f33a0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"441f0c90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef? 200 15ms","method":"GET","requestID":"441f0c90-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"441f33a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/539849a0-1f86-4b13-a434-f88c392776b3? 200 15ms","method":"GET","requestID":"441f33a0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Setting up experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Successfully locked booking for experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Attempting to update booking for experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Successfully updated booking for experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Successfully set up experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"44277100-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4427bf20-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Successfully running experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4427e630-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.854685,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"44277100-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"44277100-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.632756,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4427bf20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4427bf20-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c7493e9-2c2f-465e-80c1-729d03ba4467","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.049137} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.493386,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4427e630-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4427e630-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.702910341Z"}]},"request_id":"82b4d254-4dfd-45b6-b02a-625f15494654","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.0508208} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"44277100-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.745620100Z"}]},"request_id":"23ba835f-140c-4dd8-9769-3c09ee3ec336","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.052882} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4427bf20-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4427e630-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/signaling 200 12ms","method":"POST","requestID":"4427e630-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"442a0910-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"44277100-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} device-1 | {"level":"info","message":"GET /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef? 200 20ms","method":"GET","requestID":"44277100-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4427bf20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/539849a0-1f86-4b13-a434-f88c392776b3? 200 20ms","method":"GET","requestID":"4427bf20-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b3d1cd10-626b-49a6-ac5b-f91776750ead","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.0620852} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.480674,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"442a0910-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","object_type":"device","rebac_allow":false,"scope_allow":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":"442a0910-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"442af370-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0c5e7101-e454-4ae5-a1df-a3557d1a0200#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0c5e7101-e454-4ae5-a1df-a3557d1a0200","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"6865e59c-6794-4230-9ef9-09eadf3fea44","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.0657866} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"442a0910-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a9ffbbb6-f1f2-4e0b-a013-ffff13e1bfef","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.0660665} device-1 | {"level":"info","message":"POST /devices/539849a0-1f86-4b13-a434-f88c392776b3/signaling 200 10ms","method":"POST","requestID":"442a0910-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e90b874-4824-4385-a547-425371c93043","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.06844} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.405068,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"442af370-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"442af370-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"442af370-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/signaling 200 9ms","method":"POST","requestID":"442af370-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} gateway-1 | {"time_local":"07/Oct/2024:09:33:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 122ms","method":"POST","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a","responseTime":122,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"442cef40-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzM30.WBn-_k5IAYiz5iaGQyw4RTFpq4x3aY-pk97CaMyHrwE","level":"info","message":"auth send jwt","requestID":"4a19c9cc8ccd6c9645fed59abaff1d01"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4a19c9cc8ccd6c9645fed59abaff1d01","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4a19c9cc8ccd6c9645fed59abaff1d01"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"88a9fe53-8c2c-4b40-836f-3a6ac62825ea","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.0808446} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.231598,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"442cef40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"442cef40-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.59534,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4a19c9cc8ccd6c9645fed59abaff1d01","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293633,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzM30.WBn-_k5IAYiz5iaGQyw4RTFpq4x3aY-pk97CaMyHrwE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4a19c9cc8ccd6c9645fed59abaff1d01","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"442cef40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/539849a0-1f86-4b13-a434-f88c392776b3/signaling 200 10ms","method":"POST","requestID":"442cef40-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.702910341Z"}]},"request_id":"9ca35341-16f8-45e7-8ef3-2ecb081884b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.0865154} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4a19c9cc8ccd6c9645fed59abaff1d01","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"442eeb10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"442f1220-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4a19c9cc8ccd6c9645fed59abaff1d01"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.939362,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} gateway-1 | {"time_local":"07/Oct/2024:09:33:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef? 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":"4a19c9cc8ccd6c9645fed59abaff1d01"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} device-1 | {"level":"info","message":"GET /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef? 200 13ms","method":"GET","requestID":"4a19c9cc8ccd6c9645fed59abaff1d01","responseTime":13,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"442eeb10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"442eeb10-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.861558,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzM30.WBn-_k5IAYiz5iaGQyw4RTFpq4x3aY-pk97CaMyHrwE","level":"info","message":"auth send jwt","requestID":"9f1a76e1f5cd8ba06b78b1b001a615a1"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"442f1220-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"9f1a76e1f5cd8ba06b78b1b001a615a1","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"442f1220-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.702910341Z"}]},"request_id":"f4b2b484-048a-4b6b-a81a-81c227a9f309","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.0967224} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"9f1a76e1f5cd8ba06b78b1b001a615a1"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"442eeb10-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.676215,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"442eeb10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef? 200 13ms","method":"GET","requestID":"442eeb10-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9f1a76e1f5cd8ba06b78b1b001a615a1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293633,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzM30.WBn-_k5IAYiz5iaGQyw4RTFpq4x3aY-pk97CaMyHrwE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9f1a76e1f5cd8ba06b78b1b001a615a1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.745620100Z"}]},"request_id":"4fbe48eb-e93b-4650-8264-4a0ce1e57924","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.102285} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"442f1220-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:50.745620100Z"}]},"request_id":"530feeec-131c-42b8-9a01-5ab9af1caaf0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.1067924} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"442f1220-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9f1a76e1f5cd8ba06b78b1b001a615a1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/539849a0-1f86-4b13-a434-f88c392776b3? 200 18ms","method":"GET","requestID":"442f1220-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Building connection plan","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} 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":"5d22e3b2-91f4-45ea-af28-a8b5a996a02f"},{"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":"ba997ebb-e982-465f-abf8-77fa5698b7bb"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"44f8858b-ffcc-4ee4-a41c-b5c67cd42525"}]},"level":"info","message":"Built pairwise service configurations","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} 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/bb1ad4f6-fa11-469c-a892-aedf50dd65ef"},{"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/539849a0-1f86-4b13-a434-f88c392776b3"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"44324670-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"9f1a76e1f5cd8ba06b78b1b001a615a1"} gateway-1 | {"time_local":"07/Oct/2024:09:33:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/539849a0-1f86-4b13-a434-f88c392776b3? 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":"9f1a76e1f5cd8ba06b78b1b001a615a1"} device-1 | {"level":"info","message":"GET /devices/539849a0-1f86-4b13-a434-f88c392776b3? 200 16ms","method":"GET","requestID":"9f1a76e1f5cd8ba06b78b1b001a615a1","responseTime":16,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.867876,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"44324670-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293632,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzMn0.bIvQMby1ynmNig4k7-fhHXTBPXyY99IyDUUG8JbJLbs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"44324670-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"0ab86e71-c458-47bf-9131-2e105dc3af70","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.121773} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4570b078-18bb-4bee-93ea-f12dc30683f3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.1220207} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"44324670-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"44324670-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"44324670-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73'","requestID":"44324670-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73'","requestID":"44324670-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"44324670-848f-11ef-9233-95baf63f17e0"} 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":"44324670-848f-11ef-9233-95baf63f17e0","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":"44324670-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"9dbb59a9341b4a52da4ed74a9e2fb27a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"443a0ea0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dda2d0f0-05a2-4406-a198-263e0e77b6fb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.1671627} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.139941,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"443a0ea0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"443a0ea0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"443a0ea0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/signaling 200 9ms","method":"POST","requestID":"443a0ea0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"443bbc50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eddcfde6-d455-4386-976f-8c93f882a759","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.177483} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.351674,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"443bbc50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"443bbc50-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"443bbc50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/539849a0-1f86-4b13-a434-f88c392776b3/signaling 200 8ms","method":"POST","requestID":"443bbc50-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3/signaling"} device-1 | {"device":"539849a0-1f86-4b13-a434-f88c392776b3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"device":"bb1ad4f6-fa11-469c-a892-aedf50dd65ef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"bb1ad4f6-fa11-469c-a892-aedf50dd65ef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"canTrickle":true},"device":"539849a0-1f86-4b13-a434-f88c392776b3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 9145647424850502705 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:iY1C\r\na=ice-pwd:v42f7/awORBY0oWfq8/S0fkn\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9C:2D:06:97:91:F7:B4:F1:75:40:BB:08:5F:95:99:77:1E:BD:18:A5:FC:D5:5F:47:20:36:56:08:71:B6:E3: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":"539849a0-1f86-4b13-a434-f88c392776b3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 8384439422965256247 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:tt03\r\na=ice-pwd:FrstYv65AFmq26y6p11qu15B\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9A:98:32:98:8A:60:51:B0:D8:13:BA:59:79:30:FE:C0:83:48:C7:E6:C9:39:9D:8F:32:85:C8:63:C0:1E:C6:FC\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"bb1ad4f6-fa11-469c-a892-aedf50dd65ef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2339205000 1 udp 2113937151 2159d2dd-78b1-4613-8243-0aad8b5192ae.local 38614 typ host generation 0 ufrag tt03 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bb1ad4f6-fa11-469c-a892-aedf50dd65ef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:255854071 1 udp 1677729535 141.24.211.56 38614 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag tt03 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"bb1ad4f6-fa11-469c-a892-aedf50dd65ef","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/bb1ad4f6-fa11-469c-a892-aedf50dd65ef'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef'"} device-1 | {"content":{"candidate":"candidate:3431613899 1 udp 2113937151 36fdbf4c-6388-44a6-8a94-9c3dcc020e7c.local 52700 typ host generation 0 ufrag iY1C network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"539849a0-1f86-4b13-a434-f88c392776b3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1604445400 1 udp 1677729535 141.24.211.56 52700 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag iY1C network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"539849a0-1f86-4b13-a434-f88c392776b3","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/539849a0-1f86-4b13-a434-f88c392776b3'"} device-1 | {"device":"539849a0-1f86-4b13-a434-f88c392776b3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"bb1ad4f6-fa11-469c-a892-aedf50dd65ef","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/e022d199-a660-405f-9926-c5ac917f5b73' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e022d199-a660-405f-9926-c5ac917f5b73","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"bb1ad4f6-fa11-469c-a892-aedf50dd65ef","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"539849a0-1f86-4b13-a434-f88c392776b3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d1d0a4266c8ab81f146b932b74f8c83d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d1d0a4266c8ab81f146b932b74f8c83d","responseTime":1,"status":200,"url":"/auth"} device-1 | {"device":"539849a0-1f86-4b13-a434-f88c392776b3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"bb1ad4f6-fa11-469c-a892-aedf50dd65ef","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/bb1ad4f6-fa11-469c-a892-aedf50dd65ef"},{"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/539849a0-1f86-4b13-a434-f88c392776b3"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73"}}},"level":"info","message":"received a callback","requestID":"d1d0a4266c8ab81f146b932b74f8c83d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"d1d0a4266c8ab81f146b932b74f8c83d","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"d1d0a4266c8ab81f146b932b74f8c83d"} device-1 | {"device":"bb1ad4f6-fa11-469c-a892-aedf50dd65ef","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"e022d199-a660-405f-9926-c5ac917f5b73","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"e022d199-a660-405f-9926-c5ac917f5b73","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/e022d199-a660-405f-9926-c5ac917f5b73' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e022d199-a660-405f-9926-c5ac917f5b73","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3f2d30f9a5b86c015a90054c33afbc5a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3f2d30f9a5b86c015a90054c33afbc5a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef"},{"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/539849a0-1f86-4b13-a434-f88c392776b3"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73"}}},"level":"info","message":"received a callback","requestID":"3f2d30f9a5b86c015a90054c33afbc5a"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"444a3b40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe022d199-a660-405f-9926-c5ac917f5b73","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"53d2f5ea-4360-4371-ad45-eefa89d30015","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.2718303} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.057595,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"444a3b40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73","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":"444a3b40-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"444a3b40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/e022d199-a660-405f-9926-c5ac917f5b73 200 7ms","method":"GET","requestID":"444a3b40-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"3f2d30f9a5b86c015a90054c33afbc5a","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"3f2d30f9a5b86c015a90054c33afbc5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"444e32e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae279c90-03c0-4d40-88f6-715e8dc85240","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.2987213} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.19013,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"444e32e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","object_type":"device","rebac_allow":false,"scope_allow":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":"444e32e0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"444e32e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/signaling 200 8ms","method":"POST","requestID":"444e32e0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"444fb980-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"55c8087a-3901-4679-aaeb-b4cceb2476d8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.3079507} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.109831,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"444fb980-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","object_type":"device","rebac_allow":false,"scope_allow":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":"444fb980-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"444fb980-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/539849a0-1f86-4b13-a434-f88c392776b3/signaling 200 7ms","method":"POST","requestID":"444fb980-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzM30.WBn-_k5IAYiz5iaGQyw4RTFpq4x3aY-pk97CaMyHrwE","level":"info","message":"auth send jwt","requestID":"4b267b970faca19c684ab3b574fd4c87"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4b267b970faca19c684ab3b574fd4c87","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200","requestID":"4b267b970faca19c684ab3b574fd4c87"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.992904,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4b267b970faca19c684ab3b574fd4c87","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293633,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzM30.WBn-_k5IAYiz5iaGQyw4RTFpq4x3aY-pk97CaMyHrwE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4b267b970faca19c684ab3b574fd4c87","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200","requestID":"4b267b970faca19c684ab3b574fd4c87"} gateway-1 | {"time_local":"07/Oct/2024:09:33:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4b267b970faca19c684ab3b574fd4c87"} experiment-1 | {"level":"info","message":"GET /experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200 200 9ms","method":"GET","requestID":"4b267b970faca19c684ab3b574fd4c87","responseTime":9,"status":200,"url":"/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzM30.WBn-_k5IAYiz5iaGQyw4RTFpq4x3aY-pk97CaMyHrwE","level":"info","message":"auth send jwt","requestID":"044e71af4596187b781d925ae3b093fb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"044e71af4596187b781d925ae3b093fb","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200","requestID":"044e71af4596187b781d925ae3b093fb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.096679,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"044e71af4596187b781d925ae3b093fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293633,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzM30.WBn-_k5IAYiz5iaGQyw4RTFpq4x3aY-pk97CaMyHrwE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"044e71af4596187b781d925ae3b093fb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Attempting to finish experiment","requestID":"044e71af4596187b781d925ae3b093fb"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"445add10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.526332,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"445add10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293633,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzM30.WBn-_k5IAYiz5iaGQyw4RTFpq4x3aY-pk97CaMyHrwE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"445add10-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73","device":"539849a0-1f86-4b13-a434-f88c392776b3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73","device":"bb1ad4f6-fa11-469c-a892-aedf50dd65ef","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/e022d199-a660-405f-9926-c5ac917f5b73' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e022d199-a660-405f-9926-c5ac917f5b73","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe022d199-a660-405f-9926-c5ac917f5b73': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe022d199-a660-405f-9926-c5ac917f5b73","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"5b84201b-4e11-4781-a5ca-3adbcd597eeb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.3963847} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51fde632-3cdb-4285-8332-1e190ce1bb87","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.39649} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f4793aa9b0ababfd5d7f8c024a181212","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 6ms","method":"POST","requestID":"445add10-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f4793aa9b0ababfd5d7f8c024a181212","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a97a3e674bea1b6f9c9d98cf35ee2eaa","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/bb1ad4f6-fa11-469c-a892-aedf50dd65ef"},{"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/539849a0-1f86-4b13-a434-f88c392776b3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73"}}},"level":"info","message":"received a callback","requestID":"f4793aa9b0ababfd5d7f8c024a181212"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"a97a3e674bea1b6f9c9d98cf35ee2eaa","responseTime":0,"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/bb1ad4f6-fa11-469c-a892-aedf50dd65ef"},{"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/539849a0-1f86-4b13-a434-f88c392776b3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73"}}},"level":"info","message":"received a callback","requestID":"a97a3e674bea1b6f9c9d98cf35ee2eaa"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"445add10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/e022d199-a660-405f-9926-c5ac917f5b73 204 37ms","method":"DELETE","requestID":"445add10-848f-11ef-9233-95baf63f17e0","responseTime":37,"status":204,"url":"/peerconnections/e022d199-a660-405f-9926-c5ac917f5b73"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"},"level":"info","message":"Successfully finished experiment","requestID":"044e71af4596187b781d925ae3b093fb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"446404d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbb1ad4f6-fa11-469c-a892-aedf50dd65ef","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"003eccfe-3a9a-42ea-aef7-09355970d477","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.444805} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.407402,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"446404d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef","object_type":"device","rebac_allow":false,"scope_allow":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":"446404d0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"446404d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/signaling 200 14ms","method":"POST","requestID":"446404d0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/bb1ad4f6-fa11-469c-a892-aedf50dd65ef/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0c5e7101-e454-4ae5-a1df-a3557d1a0200': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0c5e7101-e454-4ae5-a1df-a3557d1a0200","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"2f66f813-a5ac-4ce0-86d8-9c216924819d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.4535666} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"44669ce0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7009d975-79da-485d-b8e4-14702ecdca20","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.4540389} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"044e71af4596187b781d925ae3b093fb","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F539849a0-1f86-4b13-a434-f88c392776b3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"427d1c81-f7e4-43c5-94e9-4b01855c97a0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.4596384} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.528872,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"44669ce0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"44669ce0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"44669ce0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/539849a0-1f86-4b13-a434-f88c392776b3/signaling 200 11ms","method":"POST","requestID":"44669ce0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/539849a0-1f86-4b13-a434-f88c392776b3/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200","requestID":"044e71af4596187b781d925ae3b093fb"} gateway-1 | {"time_local":"07/Oct/2024:09:33:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"044e71af4596187b781d925ae3b093fb"} experiment-1 | {"level":"info","message":"DELETE /experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200 204 156ms","method":"DELETE","requestID":"044e71af4596187b781d925ae3b093fb","responseTime":156,"status":204,"url":"/experiments/0c5e7101-e454-4ae5-a1df-a3557d1a0200"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"f4793aa9b0ababfd5d7f8c024a181212","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"f4793aa9b0ababfd5d7f8c024a181212"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"a97a3e674bea1b6f9c9d98cf35ee2eaa","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.128","http_referrer":"","http_user_agent":"node-fetch","requestID":"a97a3e674bea1b6f9c9d98cf35ee2eaa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzM30.WBn-_k5IAYiz5iaGQyw4RTFpq4x3aY-pk97CaMyHrwE","level":"info","message":"auth send jwt","requestID":"dee6f522c7ef3df80b500a87b70aa20f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dee6f522c7ef3df80b500a87b70aa20f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"dee6f522c7ef3df80b500a87b70aa20f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.900414,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"dee6f522c7ef3df80b500a87b70aa20f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293633,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzM30.WBn-_k5IAYiz5iaGQyw4RTFpq4x3aY-pk97CaMyHrwE"} gateway-1 | {"time_local":"07/Oct/2024:09:33:53 +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.743","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b37e73c48a920011f3cc5a4490100b2b"} gateway-1 | {"time_local":"07/Oct/2024:09:33:53 +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.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":"4d575d4e2eedae9930b97c5d001a191a"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"dee6f522c7ef3df80b500a87b70aa20f","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/bb1ad4f6-fa11-469c-a892-aedf50dd65ef' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/539849a0-1f86-4b13-a434-f88c392776b3' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"28f2124b-070e-4f7d-bfc8-e885cf66d8d9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.5505018} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"dee6f522c7ef3df80b500a87b70aa20f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d49dcdad-1e0c-4a7a-9739-47d68731fb5e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.5546124} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"dee6f522c7ef3df80b500a87b70aa20f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"3026d603-cd65-4d7f-84ee-a98ca4ba37ae","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.5647123} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"99b946c5-aa0e-432a-85b7-ca9d96281b3c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.5648928} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"dee6f522c7ef3df80b500a87b70aa20f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.564689448Z"}]},"request_id":"e22124fb-be76-4768-ac03-af1a0d9585c1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.5682144} authorization-1 | {"level":"info","message":"POST /relations/query 200 1ms","method":"POST","requestID":"dee6f522c7ef3df80b500a87b70aa20f","responseTime":1,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"dee6f522c7ef3df80b500a87b70aa20f"} gateway-1 | {"time_local":"07/Oct/2024:09:33:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dee6f522c7ef3df80b500a87b70aa20f"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"dee6f522c7ef3df80b500a87b70aa20f","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzM30.WBn-_k5IAYiz5iaGQyw4RTFpq4x3aY-pk97CaMyHrwE","level":"info","message":"auth send jwt","requestID":"999306aeb125a0baa6f9b842f2440f7d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"999306aeb125a0baa6f9b842f2440f7d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"999306aeb125a0baa6f9b842f2440f7d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.705507,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:53Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"999306aeb125a0baa6f9b842f2440f7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293633,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzM30.WBn-_k5IAYiz5iaGQyw4RTFpq4x3aY-pk97CaMyHrwE"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"999306aeb125a0baa6f9b842f2440f7d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a347693e-b3b2-48f6-a306-13f7185e9a0f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.590229} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"999306aeb125a0baa6f9b842f2440f7d","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3754b5dc-8000-4d94-9d62-5e32200a2baf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.5940518} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"999306aeb125a0baa6f9b842f2440f7d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"c3187608-aaa4-45ed-bc87-1db61f90ac30","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.604981} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1178a055-7241-4303-998c-105a7011db98","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.6051927} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"999306aeb125a0baa6f9b842f2440f7d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.604955299Z"}]},"request_id":"adcc4634-e0d6-4f89-a395-536814d8166a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293633.6086094} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"999306aeb125a0baa6f9b842f2440f7d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"999306aeb125a0baa6f9b842f2440f7d"} gateway-1 | {"time_local":"07/Oct/2024:09:33:53 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.040","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"999306aeb125a0baa6f9b842f2440f7d"} device-1 | {"level":"info","message":"POST /devices? 201 35ms","method":"POST","requestID":"999306aeb125a0baa6f9b842f2440f7d","responseTime":35,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNH0.Gl4feA1aV5g5DwcC3UBM4M17ffxL-mo-2CpdJ_b8HsQ","level":"info","message":"auth send jwt","requestID":"81776e3421f707d14ab1a4968d20b92d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"81776e3421f707d14ab1a4968d20b92d","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"81776e3421f707d14ab1a4968d20b92d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.083748,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"81776e3421f707d14ab1a4968d20b92d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293634,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNH0.Gl4feA1aV5g5DwcC3UBM4M17ffxL-mo-2CpdJ_b8HsQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"81776e3421f707d14ab1a4968d20b92d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.604955299Z"}]},"request_id":"86647c2b-e90a-4191-84a2-3a60ea2ac346","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293634.0913174} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"81776e3421f707d14ab1a4968d20b92d","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d16c3d0d-84df-4c21-88cb-9c09f98499a1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293634.0966623} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"81776e3421f707d14ab1a4968d20b92d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.604955299Z"}]},"request_id":"953bfe4a-55fa-4d3e-94c3-8cf5666aa199","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293634.1100867} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"81776e3421f707d14ab1a4968d20b92d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"81776e3421f707d14ab1a4968d20b92d"} gateway-1 | {"time_local":"07/Oct/2024:09:33:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/599e514e-f542-48dd-b775-c3bbc7e0715a HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"81776e3421f707d14ab1a4968d20b92d"} device-1 | {"level":"info","message":"PATCH /devices/599e514e-f542-48dd-b775-c3bbc7e0715a 200 35ms","method":"PATCH","requestID":"81776e3421f707d14ab1a4968d20b92d","responseTime":35,"status":200,"url":"/devices/599e514e-f542-48dd-b775-c3bbc7e0715a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNH0.Gl4feA1aV5g5DwcC3UBM4M17ffxL-mo-2CpdJ_b8HsQ","level":"info","message":"auth send jwt","requestID":"2dafd55c50325ee39ab89acc9305448e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2dafd55c50325ee39ab89acc9305448e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2dafd55c50325ee39ab89acc9305448e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.712495,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:54Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2dafd55c50325ee39ab89acc9305448e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293634,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNH0.Gl4feA1aV5g5DwcC3UBM4M17ffxL-mo-2CpdJ_b8HsQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2dafd55c50325ee39ab89acc9305448e","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2dafd55c50325ee39ab89acc9305448e"} gateway-1 | {"time_local":"07/Oct/2024:09:33:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/599e514e-f542-48dd-b775-c3bbc7e0715a/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.9","requestID":"2dafd55c50325ee39ab89acc9305448e"} device-1 | {"level":"info","message":"POST /devices/599e514e-f542-48dd-b775-c3bbc7e0715a/websocket 200 22ms","method":"POST","requestID":"2dafd55c50325ee39ab89acc9305448e","responseTime":22,"status":200,"url":"/devices/599e514e-f542-48dd-b775-c3bbc7e0715a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6a6b1b1e425da0c5ea65fb59e438f92e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6a6b1b1e425da0c5ea65fb59e438f92e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/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":"6a6b1b1e425da0c5ea65fb59e438f92e"} device-1 | {"level":"info","message":"OPTIONS /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/websocket 200 1ms","method":"OPTIONS","requestID":"6a6b1b1e425da0c5ea65fb59e438f92e","responseTime":1,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU","level":"info","message":"auth send jwt","requestID":"233713038e49b77fe6229896af4d79c5"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"233713038e49b77fe6229896af4d79c5","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"233713038e49b77fe6229896af4d79c5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.237322,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"233713038e49b77fe6229896af4d79c5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293635,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"233713038e49b77fe6229896af4d79c5","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"233713038e49b77fe6229896af4d79c5"} gateway-1 | {"time_local":"07/Oct/2024:09:33:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/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":"233713038e49b77fe6229896af4d79c5"} device-1 | {"level":"info","message":"POST /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/websocket 200 20ms","method":"POST","requestID":"233713038e49b77fe6229896af4d79c5","responseTime":20,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"86910e85b30864612a2eacec237a0e2e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"86910e85b30864612a2eacec237a0e2e","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:33:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a? 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":"86910e85b30864612a2eacec237a0e2e"} device-1 | {"level":"info","message":"OPTIONS /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a? 200 1ms","method":"OPTIONS","requestID":"86910e85b30864612a2eacec237a0e2e","responseTime":1,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU","level":"info","message":"auth send jwt","requestID":"4233eb01437c42c359ddf4bea12e82b4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4233eb01437c42c359ddf4bea12e82b4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4233eb01437c42c359ddf4bea12e82b4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.292922,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4233eb01437c42c359ddf4bea12e82b4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293635,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4233eb01437c42c359ddf4bea12e82b4","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.564689448Z"}]},"request_id":"fc86f4c9-c6b2-4dbc-9156-52436b2b6045","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.740725} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4233eb01437c42c359ddf4bea12e82b4","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b0ac7cf-5554-4813-837e-c162cc6bed1d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.7475116} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4233eb01437c42c359ddf4bea12e82b4","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.564689448Z"}]},"request_id":"f28e2e99-1500-4ced-a035-d93dd4df6296","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.7605698} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4233eb01437c42c359ddf4bea12e82b4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4233eb01437c42c359ddf4bea12e82b4"} gateway-1 | {"time_local":"07/Oct/2024:09:33:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a? 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":"4233eb01437c42c359ddf4bea12e82b4"} device-1 | {"level":"info","message":"PATCH /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a? 200 36ms","method":"PATCH","requestID":"4233eb01437c42c359ddf4bea12e82b4","responseTime":36,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU","level":"info","message":"auth send jwt","requestID":"a930ce1a4b34e16c7f51740572ec81f1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a930ce1a4b34e16c7f51740572ec81f1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a930ce1a4b34e16c7f51740572ec81f1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.334968,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a930ce1a4b34e16c7f51740572ec81f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293635,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a930ce1a4b34e16c7f51740572ec81f1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.564689448Z"}]},"request_id":"703245eb-2f40-431c-b0bc-5916cda3ca95","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.7900603} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a930ce1a4b34e16c7f51740572ec81f1","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a930ce1a4b34e16c7f51740572ec81f1"} gateway-1 | {"time_local":"07/Oct/2024:09:33:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a? 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":"a930ce1a4b34e16c7f51740572ec81f1"} device-1 | {"level":"info","message":"GET /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a? 200 17ms","method":"GET","requestID":"a930ce1a4b34e16c7f51740572ec81f1","responseTime":17,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU","level":"info","message":"auth send jwt","requestID":"2fd3deda124cf89e68d78a393f7b20bc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2fd3deda124cf89e68d78a393f7b20bc","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2fd3deda124cf89e68d78a393f7b20bc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.838499,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2fd3deda124cf89e68d78a393f7b20bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293635,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2fd3deda124cf89e68d78a393f7b20bc","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.604955299Z"}]},"request_id":"cb6c5ebd-b41a-4fb8-8446-9bae8f851ee1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.8133166} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2fd3deda124cf89e68d78a393f7b20bc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2fd3deda124cf89e68d78a393f7b20bc"} gateway-1 | {"time_local":"07/Oct/2024:09:33:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/599e514e-f542-48dd-b775-c3bbc7e0715a? 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":"2fd3deda124cf89e68d78a393f7b20bc"} device-1 | {"level":"info","message":"GET /devices/599e514e-f542-48dd-b775-c3bbc7e0715a? 200 14ms","method":"GET","requestID":"2fd3deda124cf89e68d78a393f7b20bc","responseTime":14,"status":200,"url":"/devices/599e514e-f542-48dd-b775-c3bbc7e0715a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU","level":"info","message":"auth send jwt","requestID":"8634e935d98e14cfd07b0c00dc91a656"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"8634e935d98e14cfd07b0c00dc91a656","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8634e935d98e14cfd07b0c00dc91a656"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.081374,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8634e935d98e14cfd07b0c00dc91a656","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293635,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"8634e935d98e14cfd07b0c00dc91a656","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Attempting to run experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Attempting to book experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Successfully booked experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"45d76af0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"45d79200-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.715998,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45d76af0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293635,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"45d76af0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.018365,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45d79200-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293635,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"45d79200-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.564689448Z"}]},"request_id":"b4fe6437-49d5-49d8-b9d2-25a4048d2dc4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.8809977} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"45d76af0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.604955299Z"}]},"request_id":"60fd91ae-6303-40ce-b5c8-1189668e3ee8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.8818557} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"45d79200-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"45d76af0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a? 200 17ms","method":"GET","requestID":"45d76af0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"45d79200-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/599e514e-f542-48dd-b775-c3bbc7e0715a? 200 17ms","method":"GET","requestID":"45d79200-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/599e514e-f542-48dd-b775-c3bbc7e0715a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Setting up experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Successfully set up experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"45e2dca0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"45e303b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45e351d0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Successfully running experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.940574,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.064865,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45e2dca0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293635,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"45e2dca0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45e303b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293635,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"45e303b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.564689448Z"}]},"request_id":"90d8de41-d6da-4e85-af2e-23edab945ca2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.9622502} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.604955299Z"}]},"request_id":"11a20780-f41f-43cd-aade-9cc31972c165","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.964132} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"45e2dca0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:50238","level":"info","msg":"Received request.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"45e303b0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cadaf6f7-6a7b-4bb2-b416-98988258dadb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.9668384} authorization-1 | {"client_addr":"127.0.0.1:50238","level":"info","msg":"Sent response.","req_id":690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.432052,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45e351d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","object_type":"device","rebac_allow":false,"scope_allow":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":"45e351d0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"45e2dca0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a? 200 25ms","method":"GET","requestID":"45e2dca0-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"45e303b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/599e514e-f542-48dd-b775-c3bbc7e0715a? 200 24ms","method":"GET","requestID":"45e303b0-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/599e514e-f542-48dd-b775-c3bbc7e0715a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45e351d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/signaling 200 24ms","method":"POST","requestID":"45e351d0-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45e72260-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7ac707f2-0b19-45fb-9bbd-78ef55c3cf98#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7ac707f2-0b19-45fb-9bbd-78ef55c3cf98","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"1933531e-9b7a-4960-a778-a19a39ce6149","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.9751332} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e09d8ee0-afc5-4955-929f-6a2546784254","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.9754498} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45e77080-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"8634e935d98e14cfd07b0c00dc91a656","responseTime":23,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8634e935d98e14cfd07b0c00dc91a656"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.917991,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.210652,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1df9e18-352f-4461-b1e6-ae9f5ba369f1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.9806058} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f64c1a87-a5db-46a3-a876-49a26f8feac2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.9831583} gateway-1 | {"time_local":"07/Oct/2024:09:33:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.166","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8634e935d98e14cfd07b0c00dc91a656"} experiment-1 | {"level":"info","message":"POST /experiments? 201 159ms","method":"POST","requestID":"8634e935d98e14cfd07b0c00dc91a656","responseTime":159,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45e72260-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","object_type":"device","rebac_allow":false,"scope_allow":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":"45e72260-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45e77080-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","object_type":"device","rebac_allow":false,"scope_allow":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":"45e77080-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU","level":"info","message":"auth send jwt","requestID":"592338f8900728bf497d7cf201c9d3a6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45e72260-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"592338f8900728bf497d7cf201c9d3a6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/signaling 200 16ms","method":"POST","requestID":"45e72260-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45e77080-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/599e514e-f542-48dd-b775-c3bbc7e0715a/signaling 200 14ms","method":"POST","requestID":"45e77080-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/599e514e-f542-48dd-b775-c3bbc7e0715a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"592338f8900728bf497d7cf201c9d3a6"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45e9e180-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932403,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"592338f8900728bf497d7cf201c9d3a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293635,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"592338f8900728bf497d7cf201c9d3a6","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c9f65cdf-a04f-4bac-a355-010b86a90323","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.9963002} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.220191,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:55Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45e9e180-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"45e9e180-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45e9e180-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.564689448Z"}]},"request_id":"ac7caff2-b40f-4c54-8839-b423181abf6d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293635.9996817} device-1 | {"level":"info","message":"POST /devices/599e514e-f542-48dd-b775-c3bbc7e0715a/signaling 200 8ms","method":"POST","requestID":"45e9e180-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/599e514e-f542-48dd-b775-c3bbc7e0715a/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"592338f8900728bf497d7cf201c9d3a6","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"45eb6820-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"45eb8f30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"592338f8900728bf497d7cf201c9d3a6"} gateway-1 | {"time_local":"07/Oct/2024:09:33:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a? 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":"592338f8900728bf497d7cf201c9d3a6"} device-1 | {"level":"info","message":"GET /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a? 200 13ms","method":"GET","requestID":"592338f8900728bf497d7cf201c9d3a6","responseTime":13,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.922,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45eb6820-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293635,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"45eb6820-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Received request.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:56Z"} authorization-1 | {"client_addr":"127.0.0.1:39194","level":"info","msg":"Sent response.","req_id":696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.84268,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45eb8f30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293635,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"45eb8f30-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNn0.i5USqpzJaqkjF8gpbYVvoGbtrn5Ed23vYDssJqC34FQ","level":"info","message":"auth send jwt","requestID":"842b29f232923694df04dae3c4fb2ed5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"842b29f232923694df04dae3c4fb2ed5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"842b29f232923694df04dae3c4fb2ed5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.564689448Z"}]},"request_id":"80f0c4aa-63af-45ff-9461-8af352149186","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293636.0102537} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"45eb6820-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.604955299Z"}]},"request_id":"79e1ae70-5bc6-4d13-82ce-f97140c0cedb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293636.011716} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"45eb6820-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"45eb8f30-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:56Z"} device-1 | {"level":"info","message":"GET /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a? 200 12ms","method":"GET","requestID":"45eb6820-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.901063,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"842b29f232923694df04dae3c4fb2ed5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293636,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNn0.i5USqpzJaqkjF8gpbYVvoGbtrn5Ed23vYDssJqC34FQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"842b29f232923694df04dae3c4fb2ed5","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"45eb8f30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/599e514e-f542-48dd-b775-c3bbc7e0715a? 200 14ms","method":"GET","requestID":"45eb8f30-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/599e514e-f542-48dd-b775-c3bbc7e0715a?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:53.604955299Z"}]},"request_id":"43ddb4b2-8263-4aeb-8fa7-0cb43d6e74c1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293636.017951} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"842b29f232923694df04dae3c4fb2ed5","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Building connection plan","requestID":"8634e935d98e14cfd07b0c00dc91a656"} 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":"87bde84d-2a47-4670-8220-a05ae54b405c"},{"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":"1bbb798a-9be7-41d2-b513-03ae00f01bc1"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"a81e7acb-4630-450b-95a3-eba23149f1d2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8634e935d98e14cfd07b0c00dc91a656"} 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/e8e185c6-3363-4dda-a02d-b173cf93a78a"},{"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/599e514e-f542-48dd-b775-c3bbc7e0715a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"8634e935d98e14cfd07b0c00dc91a656"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"842b29f232923694df04dae3c4fb2ed5"} device-1 | {"level":"info","message":"GET /devices/599e514e-f542-48dd-b775-c3bbc7e0715a? 200 11ms","method":"GET","requestID":"842b29f232923694df04dae3c4fb2ed5","responseTime":11,"status":200,"url":"/devices/599e514e-f542-48dd-b775-c3bbc7e0715a?"} gateway-1 | {"time_local":"07/Oct/2024:09:33:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/599e514e-f542-48dd-b775-c3bbc7e0715a? 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":"842b29f232923694df04dae3c4fb2ed5"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"45ee7560-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.514635,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45ee7560-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293635,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzNX0.NEv4v1XNrmWXZs-iZXX4MDrB5_xX5RRVkDqo-s9WKpU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"45ee7560-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"d4ddb02f-bd24-4ef4-95c4-db9ee49781c5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293636.0329669} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e3088686-a22c-4a55-b261-e3c172c81e3e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293636.033264} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"45ee7560-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"45ee7560-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"45ee7560-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1'","requestID":"45ee7560-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1'","requestID":"45ee7560-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"45ee7560-848f-11ef-9233-95baf63f17e0"} 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":"45ee7560-848f-11ef-9233-95baf63f17e0","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":"45ee7560-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8634e935d98e14cfd07b0c00dc91a656"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45f5c860-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:56Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f0d47df-8109-4f53-a8d2-90b514a678c0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293636.074494} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.736492,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45f5c860-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"45f5c860-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45f5c860-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/signaling 200 9ms","method":"POST","requestID":"45f5c860-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"45f77610-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:56Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4088f51c-4421-4720-a6f5-71f1c008bd47","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293636.0852787} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.434918,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"45f77610-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"45f77610-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"e8e185c6-3363-4dda-a02d-b173cf93a78a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"e8e185c6-3363-4dda-a02d-b173cf93a78a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"45f77610-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/599e514e-f542-48dd-b775-c3bbc7e0715a/signaling 200 10ms","method":"POST","requestID":"45f77610-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/599e514e-f542-48dd-b775-c3bbc7e0715a/signaling"} device-1 | {"device":"599e514e-f542-48dd-b775-c3bbc7e0715a","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":"1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 8024586151732205074 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:lG//\r\na=ice-pwd:FnPz9mpc20NEo2F3Tkw/BUyL\r\na=ice-options:trickle\r\na=fingerprint:sha-256 C2:96:40:75:83:29:A3:9D:45:1E:AC:B5:8E:7C:AE:86:0A:5A:BF:24:0B:DB:23:E5:55:A8:92:B8:88:F9:87:57\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"e8e185c6-3363-4dda-a02d-b173cf93a78a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:852432624 1 udp 2113937151 d1f4ba26-08eb-4600-95af-cef00f5f68cc.local 39466 typ host generation 0 ufrag lG// network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e8e185c6-3363-4dda-a02d-b173cf93a78a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"e8e185c6-3363-4dda-a02d-b173cf93a78a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3068296335 1 udp 1677729535 141.24.211.56 39466 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag lG// network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e8e185c6-3363-4dda-a02d-b173cf93a78a","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/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"599e514e-f542-48dd-b775-c3bbc7e0715a","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":"599e514e-f542-48dd-b775-c3bbc7e0715a","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":"599e514e-f542-48dd-b775-c3bbc7e0715a","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ca5e31e28f8ac56308a6510de15f1848","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ca5e31e28f8ac56308a6510de15f1848","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a'"} device-1 | {"device":"e8e185c6-3363-4dda-a02d-b173cf93a78a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","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/e8e185c6-3363-4dda-a02d-b173cf93a78a"},{"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/599e514e-f542-48dd-b775-c3bbc7e0715a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1"}}},"level":"info","message":"received a callback","requestID":"ca5e31e28f8ac56308a6510de15f1848"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"ca5e31e28f8ac56308a6510de15f1848","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.012","http_referrer":"","http_user_agent":"node-fetch","requestID":"ca5e31e28f8ac56308a6510de15f1848"} device-1 | {"data":{"peerconnection":"1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"599e514e-f542-48dd-b775-c3bbc7e0715a","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":"e8e185c6-3363-4dda-a02d-b173cf93a78a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"599e514e-f542-48dd-b775-c3bbc7e0715a","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":"1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"e8e185c6-3363-4dda-a02d-b173cf93a78a","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/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"65aa1998b4a57e0e0dc2baed1d953b0c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"65aa1998b4a57e0e0dc2baed1d953b0c","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/e8e185c6-3363-4dda-a02d-b173cf93a78a"},{"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/599e514e-f542-48dd-b775-c3bbc7e0715a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1"}}},"level":"info","message":"received a callback","requestID":"65aa1998b4a57e0e0dc2baed1d953b0c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"473cc750-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"359400e8-c351-4513-a4f8-18a34eeb1d4b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.2210197} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.718415,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"473cc750-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","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":"473cc750-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"473cc750-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1 200 14ms","method":"GET","requestID":"473cc750-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 44ms","method":"POST","requestID":"65aa1998b4a57e0e0dc2baed1d953b0c","responseTime":44,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.048","http_referrer":"","http_user_agent":"node-fetch","requestID":"65aa1998b4a57e0e0dc2baed1d953b0c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"47421e80-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d1246e1d-61b5-4376-bcc8-b89e001d619a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.2547743} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.770783,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"47421e80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","object_type":"device","rebac_allow":false,"scope_allow":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":"47421e80-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"47421e80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/signaling 200 13ms","method":"POST","requestID":"47421e80-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4744b690-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"00eb55bd-5b2b-40d9-a1f4-2a5d6a807b03","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.271979} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.65778,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4744b690-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","object_type":"device","rebac_allow":false,"scope_allow":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":"4744b690-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4744b690-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/599e514e-f542-48dd-b775-c3bbc7e0715a/signaling 200 14ms","method":"POST","requestID":"4744b690-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/599e514e-f542-48dd-b775-c3bbc7e0715a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzOH0.wPbdZw8125W---L41HZ5VRkV8leG6t1XZfKQzkcqgcI","level":"info","message":"auth send jwt","requestID":"d2c064df4d2910249313666e17f8344f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"d2c064df4d2910249313666e17f8344f","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98","requestID":"d2c064df4d2910249313666e17f8344f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":704,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.188313,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d2c064df4d2910249313666e17f8344f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293638,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzOH0.wPbdZw8125W---L41HZ5VRkV8leG6t1XZfKQzkcqgcI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d2c064df4d2910249313666e17f8344f","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98","requestID":"d2c064df4d2910249313666e17f8344f"} gateway-1 | {"time_local":"07/Oct/2024:09:33:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98 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":"d2c064df4d2910249313666e17f8344f"} experiment-1 | {"level":"info","message":"GET /experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98 200 15ms","method":"GET","requestID":"d2c064df4d2910249313666e17f8344f","responseTime":15,"status":200,"url":"/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzOH0.wPbdZw8125W---L41HZ5VRkV8leG6t1XZfKQzkcqgcI","level":"info","message":"auth send jwt","requestID":"5d46207a9b460a46d9c742e41dfd1b6d"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5d46207a9b460a46d9c742e41dfd1b6d","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98","requestID":"5d46207a9b460a46d9c742e41dfd1b6d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":705,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.23179,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5d46207a9b460a46d9c742e41dfd1b6d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293638,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzOH0.wPbdZw8125W---L41HZ5VRkV8leG6t1XZfKQzkcqgcI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5d46207a9b460a46d9c742e41dfd1b6d","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Attempting to finish experiment","requestID":"5d46207a9b460a46d9c742e41dfd1b6d"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"47507660-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":706,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.261575,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"47507660-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293638,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzOH0.wPbdZw8125W---L41HZ5VRkV8leG6t1XZfKQzkcqgcI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"47507660-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","device":"e8e185c6-3363-4dda-a02d-b173cf93a78a","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"599e514e-f542-48dd-b775-c3bbc7e0715a","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":"599e514e-f542-48dd-b775-c3bbc7e0715a","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":"599e514e-f542-48dd-b775-c3bbc7e0715a","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/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1ded6ca5-cf2d-44ac-805c-860f70fb6ce1': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"3aec49a4-e971-4e64-be7a-89dd625d6837","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.3675182} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"418db5bd-1495-440d-9a76-b735cd39afc0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.3679352} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"392eb3009368435408ce9514b036063e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"392eb3009368435408ce9514b036063e","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"47507660-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5c0dc5b9b314220360844f7d032d6e85","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5c0dc5b9b314220360844f7d032d6e85","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/e8e185c6-3363-4dda-a02d-b173cf93a78a"},{"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/599e514e-f542-48dd-b775-c3bbc7e0715a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1"}}},"level":"info","message":"received a callback","requestID":"392eb3009368435408ce9514b036063e"} 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/e8e185c6-3363-4dda-a02d-b173cf93a78a"},{"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/599e514e-f542-48dd-b775-c3bbc7e0715a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1"}}},"level":"info","message":"received a callback","requestID":"5c0dc5b9b314220360844f7d032d6e85"} device-1 | {"data":{"peerconnection":"1ded6ca5-cf2d-44ac-805c-860f70fb6ce1","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"47507660-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1 204 52ms","method":"DELETE","requestID":"47507660-848f-11ef-9233-95baf63f17e0","responseTime":52,"status":204,"url":"/peerconnections/1ded6ca5-cf2d-44ac-805c-860f70fb6ce1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"},"level":"info","message":"Successfully finished experiment","requestID":"5d46207a9b460a46d9c742e41dfd1b6d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"475bc100-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe8e185c6-3363-4dda-a02d-b173cf93a78a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8cc522c-5618-4df7-8eba-ac6417f3717f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.4233978} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":707,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.28509,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"475bc100-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a","object_type":"device","rebac_allow":false,"scope_allow":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":"475bc100-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7ac707f2-0b19-45fb-9bbd-78ef55c3cf98': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F7ac707f2-0b19-45fb-9bbd-78ef55c3cf98","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"473ed91f-14fa-410b-ba1b-e444d2eda8b3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.4289165} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"475bc100-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4bc409bd-0b19-4386-ac10-d0f5b4bcc4c1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.4295328} device-1 | {"level":"info","message":"POST /devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/signaling 200 15ms","method":"POST","requestID":"475bc100-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/e8e185c6-3363-4dda-a02d-b173cf93a78a/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"5d46207a9b460a46d9c742e41dfd1b6d","responseTime":17,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"475e5910-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F599e514e-f542-48dd-b775-c3bbc7e0715a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ef425e17-3ed9-4597-8a32-3954999bf49e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.4398174} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":708,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.160614,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"475e5910-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/599e514e-f542-48dd-b775-c3bbc7e0715a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"475e5910-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"475e5910-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/599e514e-f542-48dd-b775-c3bbc7e0715a/signaling 200 12ms","method":"POST","requestID":"475e5910-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/599e514e-f542-48dd-b775-c3bbc7e0715a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98","requestID":"5d46207a9b460a46d9c742e41dfd1b6d"} gateway-1 | {"time_local":"07/Oct/2024:09:33:58 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98 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":"5d46207a9b460a46d9c742e41dfd1b6d"} gateway-1 | {"time_local":"07/Oct/2024:09:33:58 +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.359","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"8693fedc62eca3d998e9ff3e97c995f3"} experiment-1 | {"level":"info","message":"DELETE /experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98 204 177ms","method":"DELETE","requestID":"5d46207a9b460a46d9c742e41dfd1b6d","responseTime":177,"status":204,"url":"/experiments/7ac707f2-0b19-45fb-9bbd-78ef55c3cf98"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"392eb3009368435408ce9514b036063e","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"392eb3009368435408ce9514b036063e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 133ms","method":"POST","requestID":"5c0dc5b9b314220360844f7d032d6e85","responseTime":133,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.140","http_referrer":"","http_user_agent":"node-fetch","requestID":"5c0dc5b9b314220360844f7d032d6e85"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzOH0.wPbdZw8125W---L41HZ5VRkV8leG6t1XZfKQzkcqgcI","level":"info","message":"auth send jwt","requestID":"c5512551c9660fab4ecb61b5674578ff"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c5512551c9660fab4ecb61b5674578ff","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c5512551c9660fab4ecb61b5674578ff"} gateway-1 | {"time_local":"07/Oct/2024:09:33:58 +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.834","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"469f1ed92d779fb30b3680d4fd7fb5bb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":709,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.741767,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c5512551c9660fab4ecb61b5674578ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293638,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzOH0.wPbdZw8125W---L41HZ5VRkV8leG6t1XZfKQzkcqgcI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c5512551c9660fab4ecb61b5674578ff","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/599e514e-f542-48dd-b775-c3bbc7e0715a' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0a141d6a-d974-49a6-954f-2a1e9a3e9726","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.5302243} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c5512551c9660fab4ecb61b5674578ff","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/e8e185c6-3363-4dda-a02d-b173cf93a78a' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dffcea7c-60b8-4a31-b814-a7f535754043","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.5354908} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c5512551c9660fab4ecb61b5674578ff","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"d6247537-1113-4be8-adfa-d9b034ef47b0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.5433915} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d7eca93-fac7-474d-abd0-e29b734f5c5b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.543475} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"c5512551c9660fab4ecb61b5674578ff","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.543358829Z"}]},"request_id":"6cdb15b1-545f-4d03-a531-0acfaf135f11","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.5478566} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c5512551c9660fab4ecb61b5674578ff","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c5512551c9660fab4ecb61b5674578ff"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"c5512551c9660fab4ecb61b5674578ff","responseTime":38,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c5512551c9660fab4ecb61b5674578ff"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzOH0.wPbdZw8125W---L41HZ5VRkV8leG6t1XZfKQzkcqgcI","level":"info","message":"auth send jwt","requestID":"3b7a13a5fdf785d36318263145e92d67"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3b7a13a5fdf785d36318263145e92d67","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3b7a13a5fdf785d36318263145e92d67"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":710,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.72931,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:58Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3b7a13a5fdf785d36318263145e92d67","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293638,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzOH0.wPbdZw8125W---L41HZ5VRkV8leG6t1XZfKQzkcqgcI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3b7a13a5fdf785d36318263145e92d67","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"40c299e2-fc33-46ed-a571-bdf3042d6cd3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.575612} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3b7a13a5fdf785d36318263145e92d67","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"20a738a9-e3fe-4522-82d8-9986ca812dce","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.579744} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"3b7a13a5fdf785d36318263145e92d67","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"3ce8c830-4ec8-4582-b100-f14cb2d37333","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.59033} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f3e167bf-8d52-4b8a-a611-397d901d4840","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.5906231} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"3b7a13a5fdf785d36318263145e92d67","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.590306154Z"}]},"request_id":"c01f06a6-b056-43bc-bb5c-9125a706b0bb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293638.594276} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3b7a13a5fdf785d36318263145e92d67","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3b7a13a5fdf785d36318263145e92d67"} gateway-1 | {"time_local":"07/Oct/2024:09:33: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.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3b7a13a5fdf785d36318263145e92d67"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"3b7a13a5fdf785d36318263145e92d67","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzOX0.Ne5vP5072_ZeL4okEMMmr3nL6K5m1dDQaLaT8Vy9wLM","level":"info","message":"auth send jwt","requestID":"928fbde66909ecf16bbee4a92cf5d256"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"928fbde66909ecf16bbee4a92cf5d256","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"928fbde66909ecf16bbee4a92cf5d256"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":711,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.722703,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"928fbde66909ecf16bbee4a92cf5d256","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293639,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzOX0.Ne5vP5072_ZeL4okEMMmr3nL6K5m1dDQaLaT8Vy9wLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"928fbde66909ecf16bbee4a92cf5d256","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.590306154Z"}]},"request_id":"f45e6f08-ece8-4aea-a911-a57c9aa15f9a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293639.0825126} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"928fbde66909ecf16bbee4a92cf5d256","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f116b5bd-000e-4762-8e91-d8998e97b9b8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293639.089146} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"928fbde66909ecf16bbee4a92cf5d256","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.590306154Z"}]},"request_id":"4e3d71a4-5549-4f55-9bb2-eaca21d651b3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293639.1035995} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"928fbde66909ecf16bbee4a92cf5d256","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"928fbde66909ecf16bbee4a92cf5d256"} gateway-1 | {"time_local":"07/Oct/2024:09:33:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6d612b54-dc66-4826-a154-792369481f34 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.042","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"928fbde66909ecf16bbee4a92cf5d256"} device-1 | {"level":"info","message":"PATCH /devices/6d612b54-dc66-4826-a154-792369481f34 200 38ms","method":"PATCH","requestID":"928fbde66909ecf16bbee4a92cf5d256","responseTime":38,"status":200,"url":"/devices/6d612b54-dc66-4826-a154-792369481f34"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzOX0.Ne5vP5072_ZeL4okEMMmr3nL6K5m1dDQaLaT8Vy9wLM","level":"info","message":"auth send jwt","requestID":"b1e01b96f9876767b1cd29c015bcd2f6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b1e01b96f9876767b1cd29c015bcd2f6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b1e01b96f9876767b1cd29c015bcd2f6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:33:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":712,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.331177,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:33:59Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b1e01b96f9876767b1cd29c015bcd2f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293639,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzYzOX0.Ne5vP5072_ZeL4okEMMmr3nL6K5m1dDQaLaT8Vy9wLM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"b1e01b96f9876767b1cd29c015bcd2f6","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b1e01b96f9876767b1cd29c015bcd2f6"} device-1 | {"level":"info","message":"POST /devices/6d612b54-dc66-4826-a154-792369481f34/websocket 200 21ms","method":"POST","requestID":"b1e01b96f9876767b1cd29c015bcd2f6","responseTime":21,"status":200,"url":"/devices/6d612b54-dc66-4826-a154-792369481f34/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:33:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6d612b54-dc66-4826-a154-792369481f34/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.9","requestID":"b1e01b96f9876767b1cd29c015bcd2f6"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5ee14f91ed34c696465e1b8ac90a4605","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"5ee14f91ed34c696465e1b8ac90a4605","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/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":"5ee14f91ed34c696465e1b8ac90a4605"} device-1 | {"level":"info","message":"OPTIONS /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/websocket 200 1ms","method":"OPTIONS","requestID":"5ee14f91ed34c696465e1b8ac90a4605","responseTime":1,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0","level":"info","message":"auth send jwt","requestID":"4cdf6f843497136a64bf3e05dbcc85d1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4cdf6f843497136a64bf3e05dbcc85d1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4cdf6f843497136a64bf3e05dbcc85d1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":713,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.144026,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4cdf6f843497136a64bf3e05dbcc85d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4cdf6f843497136a64bf3e05dbcc85d1","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4cdf6f843497136a64bf3e05dbcc85d1"} gateway-1 | {"time_local":"07/Oct/2024:09:34:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/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":"4cdf6f843497136a64bf3e05dbcc85d1"} device-1 | {"level":"info","message":"POST /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/websocket 200 21ms","method":"POST","requestID":"4cdf6f843497136a64bf3e05dbcc85d1","responseTime":21,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7918d2b4624e074e47f99bd8b58ece21","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"7918d2b4624e074e47f99bd8b58ece21","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c? 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":"7918d2b4624e074e47f99bd8b58ece21"} device-1 | {"level":"info","message":"OPTIONS /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c? 200 2ms","method":"OPTIONS","requestID":"7918d2b4624e074e47f99bd8b58ece21","responseTime":2,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0","level":"info","message":"auth send jwt","requestID":"2702581bf479b7bdc7a14b06fef7da68"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2702581bf479b7bdc7a14b06fef7da68","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"2702581bf479b7bdc7a14b06fef7da68"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":714,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.227599,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2702581bf479b7bdc7a14b06fef7da68","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2702581bf479b7bdc7a14b06fef7da68","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.543358829Z"}]},"request_id":"38270744-40c6-499b-9978-16df4fea0b94","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.682767} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2702581bf479b7bdc7a14b06fef7da68","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a4cf4e55-e85f-4657-9d9d-b5b27a7cbf68","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.6898656} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2702581bf479b7bdc7a14b06fef7da68","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.543358829Z"}]},"request_id":"eb451e9a-6779-4e49-bb74-b28bb6b2ef6f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.70138} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2702581bf479b7bdc7a14b06fef7da68","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"2702581bf479b7bdc7a14b06fef7da68"} gateway-1 | {"time_local":"07/Oct/2024:09:34:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c? 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":"2702581bf479b7bdc7a14b06fef7da68"} device-1 | {"level":"info","message":"PATCH /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c? 200 35ms","method":"PATCH","requestID":"2702581bf479b7bdc7a14b06fef7da68","responseTime":35,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0","level":"info","message":"auth send jwt","requestID":"017b936ff0ccbb01908ebbddeca009c6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"017b936ff0ccbb01908ebbddeca009c6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"017b936ff0ccbb01908ebbddeca009c6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":715,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.145212,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"017b936ff0ccbb01908ebbddeca009c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"017b936ff0ccbb01908ebbddeca009c6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.543358829Z"}]},"request_id":"24e006de-337d-4d50-82f6-5661ad9966c5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.7299697} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"017b936ff0ccbb01908ebbddeca009c6","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"017b936ff0ccbb01908ebbddeca009c6"} device-1 | {"level":"info","message":"GET /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c? 200 16ms","method":"GET","requestID":"017b936ff0ccbb01908ebbddeca009c6","responseTime":16,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c? 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":"017b936ff0ccbb01908ebbddeca009c6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0","level":"info","message":"auth send jwt","requestID":"000bd0af423836df76e3c9f9393f5a06"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"000bd0af423836df76e3c9f9393f5a06","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"000bd0af423836df76e3c9f9393f5a06"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":716,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.349868,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"000bd0af423836df76e3c9f9393f5a06","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"000bd0af423836df76e3c9f9393f5a06","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.590306154Z"}]},"request_id":"dfd332b7-368e-4626-8276-30cdeb9d1be1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.7560227} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"000bd0af423836df76e3c9f9393f5a06","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"000bd0af423836df76e3c9f9393f5a06"} device-1 | {"level":"info","message":"GET /devices/6d612b54-dc66-4826-a154-792369481f34? 200 16ms","method":"GET","requestID":"000bd0af423836df76e3c9f9393f5a06","responseTime":16,"status":200,"url":"/devices/6d612b54-dc66-4826-a154-792369481f34?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6d612b54-dc66-4826-a154-792369481f34? 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":"000bd0af423836df76e3c9f9393f5a06"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0","level":"info","message":"auth send jwt","requestID":"f0979ecc5decd822a45dbf40a7e59823"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f0979ecc5decd822a45dbf40a7e59823","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f0979ecc5decd822a45dbf40a7e59823"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":717,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.121701,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f0979ecc5decd822a45dbf40a7e59823","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f0979ecc5decd822a45dbf40a7e59823","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Attempting to run experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Attempting to book experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Successfully booked experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"48c95ac0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"48c9a8e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":718,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.288359,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48c95ac0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48c95ac0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50244","level":"info","msg":"Received request.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:50244","level":"info","msg":"Sent response.","req_id":719,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.829619,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48c9a8e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"48c9a8e0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.543358829Z"}]},"request_id":"6a2dd063-edff-4a3a-8142-a4abeba4a950","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.8252995} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"48c95ac0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.590306154Z"}]},"request_id":"1ab90f95-0453-4454-9d87-6cc5f7dcea67","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.83163} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"48c95ac0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c? 200 21ms","method":"GET","requestID":"48c95ac0-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"48c9a8e0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"48c9a8e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6d612b54-dc66-4826-a154-792369481f34? 200 24ms","method":"GET","requestID":"48c9a8e0-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/6d612b54-dc66-4826-a154-792369481f34?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Setting up experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Successfully set up experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"48d604f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"48d65310-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48d67a20-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Successfully running experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":720,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.938388,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:50244","level":"info","msg":"Received request.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48d604f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"48d604f0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50244","level":"info","msg":"Sent response.","req_id":721,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.812321,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48d65310-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48d65310-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50252","level":"info","msg":"Received request.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.590306154Z"}]},"request_id":"5e17cbe5-2e9f-42ae-b139-47b452cd2744","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.9088397} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3dba4386-b29e-494d-af54-4d314825d617","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.9095805} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"48d65310-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:50252","level":"info","msg":"Sent response.","req_id":722,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.303249,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.543358829Z"}]},"request_id":"9990d5bf-0834-401c-a69e-31f79a362622","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.910298} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"48d604f0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48d67a20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","object_type":"device","rebac_allow":false,"scope_allow":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":"48d67a20-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"48d65310-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6d612b54-dc66-4826-a154-792369481f34? 200 23ms","method":"GET","requestID":"48d65310-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/6d612b54-dc66-4826-a154-792369481f34?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"48d604f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c? 200 25ms","method":"GET","requestID":"48d604f0-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48d67a20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/signaling 200 23ms","method":"POST","requestID":"48d67a20-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0fdcb5e9-74fc-4340-8bd8-66f33c80853d#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0fdcb5e9-74fc-4340-8bd8-66f33c80853d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"5729995e-c74a-40e5-ad03-454b670b9ae5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.921515} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"68bfcc19-32b5-4cb6-8a60-f77ac96b8bc9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.9216945} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48da4ab0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"f0979ecc5decd822a45dbf40a7e59823","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48da71c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:50244","level":"info","msg":"Received request.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ce8a420-10e6-4f9c-b17f-d80eb0447f0e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.927413} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":723,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.846481,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48da4ab0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"48da4ab0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6956cb97-762a-4b20-b5b2-b69cb979a8a7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.928846} authorization-1 | {"client_addr":"127.0.0.1:50244","level":"info","msg":"Sent response.","req_id":724,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.601262,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48da71c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","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/0fdcb5e9-74fc-4340-8bd8-66f33c80853d","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f0979ecc5decd822a45dbf40a7e59823"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48da71c0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:34:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.168","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f0979ecc5decd822a45dbf40a7e59823"} experiment-1 | {"level":"info","message":"POST /experiments? 201 161ms","method":"POST","requestID":"f0979ecc5decd822a45dbf40a7e59823","responseTime":161,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48da4ab0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/signaling 200 10ms","method":"POST","requestID":"48da4ab0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48da71c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6d612b54-dc66-4826-a154-792369481f34/signaling 200 11ms","method":"POST","requestID":"48da71c0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/6d612b54-dc66-4826-a154-792369481f34/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48dc1f70-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0","level":"info","message":"auth send jwt","requestID":"df1090f4ff2298a0e7770b8cd56bea6d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"df1090f4ff2298a0e7770b8cd56bea6d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"df1090f4ff2298a0e7770b8cd56bea6d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:50244","level":"info","msg":"Received request.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:50244","level":"info","msg":"Sent response.","req_id":726,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.746281,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"df1090f4ff2298a0e7770b8cd56bea6d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"df1090f4ff2298a0e7770b8cd56bea6d","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"20a7ca12-5087-4d51-bb4a-85f71fd9c0af","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.9400697} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":725,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.080551,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48dc1f70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","object_type":"device","rebac_allow":false,"scope_allow":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":"48dc1f70-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48dc1f70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.543358829Z"}]},"request_id":"f3f0fa37-1558-4e16-822b-8cee76b48c53","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.9439232} device-1 | {"level":"info","message":"POST /devices/6d612b54-dc66-4826-a154-792369481f34/signaling 200 9ms","method":"POST","requestID":"48dc1f70-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/6d612b54-dc66-4826-a154-792369481f34/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"df1090f4ff2298a0e7770b8cd56bea6d","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"48ddcd20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"48ddf430-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"df1090f4ff2298a0e7770b8cd56bea6d"} gateway-1 | {"time_local":"07/Oct/2024:09:34:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c? 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":"df1090f4ff2298a0e7770b8cd56bea6d"} device-1 | {"level":"info","message":"GET /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c? 200 12ms","method":"GET","requestID":"df1090f4ff2298a0e7770b8cd56bea6d","responseTime":12,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:50244","level":"info","msg":"Received request.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":727,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.559868,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48ddcd20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"48ddcd20-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:50244","level":"info","msg":"Sent response.","req_id":728,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.023127,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48ddf430-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0","level":"info","message":"auth send jwt","requestID":"88cc915b6b06f228403821591fef8671"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"48ddf430-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"88cc915b6b06f228403821591fef8671","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"88cc915b6b06f228403821591fef8671"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.543358829Z"}]},"request_id":"3ef2a271-f9c1-49d0-96ec-9816ff1f609f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.9569032} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"48ddcd20-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.590306154Z"}]},"request_id":"aef9777b-8b43-4117-854e-1ea8ca738ba7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.9579663} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"48ddf430-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"48ddcd20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":729,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.927391,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} device-1 | {"level":"info","message":"GET /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c? 200 14ms","method":"GET","requestID":"48ddcd20-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"88cc915b6b06f228403821591fef8671","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"88cc915b6b06f228403821591fef8671","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"48ddf430-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6d612b54-dc66-4826-a154-792369481f34? 200 17ms","method":"GET","requestID":"48ddf430-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/6d612b54-dc66-4826-a154-792369481f34?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:33:58.590306154Z"}]},"request_id":"7dd34518-4059-4fcb-9a24-1745219b5959","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.964606} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Building connection plan","requestID":"f0979ecc5decd822a45dbf40a7e59823"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"88cc915b6b06f228403821591fef8671","responseTime":2,"status":200,"url":"/relations/query"} 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":"1084322c-d29d-4e8e-b4a0-17bdf9c2eb47"},{"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":"94111d7e-242b-4e1c-86d9-c4873119486f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"a768be46-c129-44da-a24b-a9828dc6605e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f0979ecc5decd822a45dbf40a7e59823"} 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/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c"},{"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/6d612b54-dc66-4826-a154-792369481f34"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"f0979ecc5decd822a45dbf40a7e59823"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"48e10170-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"88cc915b6b06f228403821591fef8671"} device-1 | {"level":"info","message":"GET /devices/6d612b54-dc66-4826-a154-792369481f34? 200 13ms","method":"GET","requestID":"88cc915b6b06f228403821591fef8671","responseTime":13,"status":200,"url":"/devices/6d612b54-dc66-4826-a154-792369481f34?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6d612b54-dc66-4826-a154-792369481f34? 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":"88cc915b6b06f228403821591fef8671"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":730,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.781528,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:00Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48e10170-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293640,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0MH0.LFOOJwF2jEpKuwSRs70xcNH-7Yn6FXXgDh0zlUU_eV0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"48e10170-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"d60f4e40-8ed5-4fb1-bbfd-d0824c811929","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.97795} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d78734a4-fdc3-432f-ba0d-c84aebf9d21a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293640.97816} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"48e10170-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"48e10170-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"48e10170-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b'","requestID":"48e10170-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b'","requestID":"48e10170-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"48e10170-848f-11ef-9233-95baf63f17e0"} 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":"48e10170-848f-11ef-9233-95baf63f17e0","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":"48e10170-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f0979ecc5decd822a45dbf40a7e59823"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48ea2930-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:01Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab06acd2-44ba-4a88-8bce-1245b51cb5dd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293641.0314384} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":731,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.393027,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48ea2930-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"48ea2930-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48ea2930-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/signaling 200 9ms","method":"POST","requestID":"48ea2930-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/signaling"} device-1 | {"device":"9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"48ebfdf0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:01Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e4625ee7-0689-4fe3-b0f6-32d437bb4fe1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293641.0436876} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":732,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.248265,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48ebfdf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"48ebfdf0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"48ebfdf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6d612b54-dc66-4826-a154-792369481f34/signaling 200 8ms","method":"POST","requestID":"48ebfdf0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/6d612b54-dc66-4826-a154-792369481f34/signaling"} device-1 | {"device":"6d612b54-dc66-4826-a154-792369481f34","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":"db767dd6-3b7d-407f-bd5d-ed40986fb87b","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 8213116495563697862 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:janr\r\na=ice-pwd:32xZpijjlMXQHweT6xMKQIEb\r\na=ice-options:trickle\r\na=fingerprint:sha-256 43:4F:A2:58:AC:C1:65:13:7E:08:DA:42:2E:33:2D:F4:8E:B0:6C:DD:07:D3:DC:87:11:FC:77:C3:FA:C9:FB:E4\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:674763200 1 udp 2113937151 ce42a0cf-f2e8-4338-98e9-5780fbaa5369.local 45541 typ host generation 0 ufrag janr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:3138629843 1 udp 1677729535 141.24.211.56 45541 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag janr network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","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/db767dd6-3b7d-407f-bd5d-ed40986fb87b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"db767dd6-3b7d-407f-bd5d-ed40986fb87b","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6d612b54-dc66-4826-a154-792369481f34","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":"6d612b54-dc66-4826-a154-792369481f34","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":"6d612b54-dc66-4826-a154-792369481f34","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e4063f3717d824a3be91118aa8d354a0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e4063f3717d824a3be91118aa8d354a0","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c'"} device-1 | {"device":"9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","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/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c"},{"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/6d612b54-dc66-4826-a154-792369481f34"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b"}}},"level":"info","message":"received a callback","requestID":"e4063f3717d824a3be91118aa8d354a0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 6ms","method":"POST","requestID":"e4063f3717d824a3be91118aa8d354a0","responseTime":6,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"e4063f3717d824a3be91118aa8d354a0"} device-1 | {"data":{"peerconnection":"db767dd6-3b7d-407f-bd5d-ed40986fb87b","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"6d612b54-dc66-4826-a154-792369481f34","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":"9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"6d612b54-dc66-4826-a154-792369481f34","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":"db767dd6-3b7d-407f-bd5d-ed40986fb87b","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","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/db767dd6-3b7d-407f-bd5d-ed40986fb87b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"db767dd6-3b7d-407f-bd5d-ed40986fb87b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"04380191957c6212c0c15d26473896f3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"04380191957c6212c0c15d26473896f3","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/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c"},{"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/6d612b54-dc66-4826-a154-792369481f34"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b"}}},"level":"info","message":"received a callback","requestID":"04380191957c6212c0c15d26473896f3"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"4a2911d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdb767dd6-3b7d-407f-bd5d-ed40986fb87b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51e1b943-23c8-4cb3-80c6-01a3ff5698fa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.1222684} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":733,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.710995,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4a2911d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b","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":"4a2911d0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"4a2911d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b 200 9ms","method":"GET","requestID":"4a2911d0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 38ms","method":"POST","requestID":"04380191957c6212c0c15d26473896f3","responseTime":38,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.042","http_referrer":"","http_user_agent":"node-fetch","requestID":"04380191957c6212c0c15d26473896f3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a2e1ae0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"569f19ab-518c-4006-b36a-09cead8fd006","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.1562812} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":734,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.362893,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4a2e1ae0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","object_type":"device","rebac_allow":false,"scope_allow":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":"4a2e1ae0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a2e1ae0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/signaling 200 11ms","method":"POST","requestID":"4a2e1ae0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a303dc0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"67a80566-7f3e-4fef-af31-53a850fa22b8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.1702626} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":735,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.211499,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4a303dc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","object_type":"device","rebac_allow":false,"scope_allow":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":"4a303dc0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a303dc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6d612b54-dc66-4826-a154-792369481f34/signaling 200 12ms","method":"POST","requestID":"4a303dc0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/6d612b54-dc66-4826-a154-792369481f34/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0M30.BE2ga0w2dtA6rO2G8e-RF6ILqmHiZTHyXVnCP4tEK5Q","level":"info","message":"auth send jwt","requestID":"c612b7eeca4f1fc627f08891d4237116"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c612b7eeca4f1fc627f08891d4237116","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d","requestID":"c612b7eeca4f1fc627f08891d4237116"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":736,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.139563,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c612b7eeca4f1fc627f08891d4237116","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293643,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0M30.BE2ga0w2dtA6rO2G8e-RF6ILqmHiZTHyXVnCP4tEK5Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c612b7eeca4f1fc627f08891d4237116","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d","requestID":"c612b7eeca4f1fc627f08891d4237116"} gateway-1 | {"time_local":"07/Oct/2024:09:34:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c612b7eeca4f1fc627f08891d4237116"} experiment-1 | {"level":"info","message":"GET /experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d 200 14ms","method":"GET","requestID":"c612b7eeca4f1fc627f08891d4237116","responseTime":14,"status":200,"url":"/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0M30.BE2ga0w2dtA6rO2G8e-RF6ILqmHiZTHyXVnCP4tEK5Q","level":"info","message":"auth send jwt","requestID":"276b0c113dd62baa3ae41574f843440b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"276b0c113dd62baa3ae41574f843440b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d","requestID":"276b0c113dd62baa3ae41574f843440b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":737,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.064246,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"276b0c113dd62baa3ae41574f843440b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293643,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0M30.BE2ga0w2dtA6rO2G8e-RF6ILqmHiZTHyXVnCP4tEK5Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"276b0c113dd62baa3ae41574f843440b","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Attempting to finish experiment","requestID":"276b0c113dd62baa3ae41574f843440b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"4a3cc0e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":738,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.734449,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4a3cc0e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293643,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0M30.BE2ga0w2dtA6rO2G8e-RF6ILqmHiZTHyXVnCP4tEK5Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4a3cc0e0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b","device":"9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"6d612b54-dc66-4826-a154-792369481f34","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":"6d612b54-dc66-4826-a154-792369481f34","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":"6d612b54-dc66-4826-a154-792369481f34","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/db767dd6-3b7d-407f-bd5d-ed40986fb87b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"db767dd6-3b7d-407f-bd5d-ed40986fb87b","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2cafe656c8749c9a5c0e853b4a3c9dde","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2cafe656c8749c9a5c0e853b4a3c9dde","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f233c8fe95af85cc269cc1625f23c33c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f233c8fe95af85cc269cc1625f23c33c","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/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c"},{"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/6d612b54-dc66-4826-a154-792369481f34"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b"}}},"level":"info","message":"received a callback","requestID":"2cafe656c8749c9a5c0e853b4a3c9dde"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdb767dd6-3b7d-407f-bd5d-ed40986fb87b': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdb767dd6-3b7d-407f-bd5d-ed40986fb87b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"d11a80f0-1d80-4dd6-b8de-6b3e08ac9dc3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.2656007} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b67c90d4-cc54-476c-b257-b9eb8186f1ff","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.265833} 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/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c"},{"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/6d612b54-dc66-4826-a154-792369481f34"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b"}}},"level":"info","message":"received a callback","requestID":"f233c8fe95af85cc269cc1625f23c33c"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"4a3cc0e0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"db767dd6-3b7d-407f-bd5d-ed40986fb87b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"4a3cc0e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b 204 36ms","method":"DELETE","requestID":"4a3cc0e0-848f-11ef-9233-95baf63f17e0","responseTime":36,"status":204,"url":"/peerconnections/db767dd6-3b7d-407f-bd5d-ed40986fb87b"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"},"level":"info","message":"Successfully finished experiment","requestID":"276b0c113dd62baa3ae41574f843440b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a460fb0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"666e0098-8969-4789-9e3a-2b8f4cc4e510","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.3126943} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":739,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.690897,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4a460fb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c","object_type":"device","rebac_allow":false,"scope_allow":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":"4a460fb0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a460fb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/signaling 200 11ms","method":"POST","requestID":"4a460fb0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4a480b80-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0fdcb5e9-74fc-4340-8bd8-66f33c80853d': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0fdcb5e9-74fc-4340-8bd8-66f33c80853d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"b195ab1a-7d07-4496-a35b-ac8e21dcd74e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.3210745} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"013d6ea9-dde3-4d01-a5ef-035a5d07eb3e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.321243} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"276b0c113dd62baa3ae41574f843440b","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6d612b54-dc66-4826-a154-792369481f34","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"90ca5907-33d5-4b79-9fa7-4cc4b13b2d9e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.3256755} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":740,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.902667,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4a480b80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6d612b54-dc66-4826-a154-792369481f34","object_type":"device","rebac_allow":false,"scope_allow":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":"4a480b80-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4a480b80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6d612b54-dc66-4826-a154-792369481f34/signaling 200 10ms","method":"POST","requestID":"4a480b80-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/6d612b54-dc66-4826-a154-792369481f34/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d","requestID":"276b0c113dd62baa3ae41574f843440b"} gateway-1 | {"time_local":"07/Oct/2024:09:34:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d 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":"276b0c113dd62baa3ae41574f843440b"} experiment-1 | {"level":"info","message":"DELETE /experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d 204 159ms","method":"DELETE","requestID":"276b0c113dd62baa3ae41574f843440b","responseTime":159,"status":204,"url":"/experiments/0fdcb5e9-74fc-4340-8bd8-66f33c80853d"} gateway-1 | {"time_local":"07/Oct/2024:09:34:03 +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.256","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"81fa2de45510d088d53eac7d9668c175"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"2cafe656c8749c9a5c0e853b4a3c9dde","responseTime":131,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"2cafe656c8749c9a5c0e853b4a3c9dde"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 131ms","method":"POST","requestID":"f233c8fe95af85cc269cc1625f23c33c","responseTime":131,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"f233c8fe95af85cc269cc1625f23c33c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0M30.BE2ga0w2dtA6rO2G8e-RF6ILqmHiZTHyXVnCP4tEK5Q","level":"info","message":"auth send jwt","requestID":"03d8535c2c1fda231668ebbf82f035fe"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"03d8535c2c1fda231668ebbf82f035fe","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"03d8535c2c1fda231668ebbf82f035fe"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:03Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:03 +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.781","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"29efe3ed23b62c377aa9d22ffbfa5fdf"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":741,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.435994,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"03d8535c2c1fda231668ebbf82f035fe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293643,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0M30.BE2ga0w2dtA6rO2G8e-RF6ILqmHiZTHyXVnCP4tEK5Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"03d8535c2c1fda231668ebbf82f035fe","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/6d612b54-dc66-4826-a154-792369481f34' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7c734f95-6a68-424b-9bab-d722bb963a85","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.4240453} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"03d8535c2c1fda231668ebbf82f035fe","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/9469e5bb-fce2-4900-bb12-d0bfd0bfb68c' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"176ccd09-e160-413b-8069-914dd873341a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.4289532} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"03d8535c2c1fda231668ebbf82f035fe","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"288f61ac-03ad-477f-bdcc-31c3e8420793","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.4452674} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"daf2b045-94e4-47a7-8683-a225f08117c1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.4454389} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"03d8535c2c1fda231668ebbf82f035fe","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.445238108Z"}]},"request_id":"7d563348-229d-4649-b9ee-bbd9c0157bd5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.4496183} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"03d8535c2c1fda231668ebbf82f035fe","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"03d8535c2c1fda231668ebbf82f035fe"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"03d8535c2c1fda231668ebbf82f035fe","responseTime":52,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"03d8535c2c1fda231668ebbf82f035fe"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0M30.BE2ga0w2dtA6rO2G8e-RF6ILqmHiZTHyXVnCP4tEK5Q","level":"info","message":"auth send jwt","requestID":"5f1512ca493c540045f240750f8319b0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5f1512ca493c540045f240750f8319b0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5f1512ca493c540045f240750f8319b0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":742,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.791648,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f1512ca493c540045f240750f8319b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293643,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0M30.BE2ga0w2dtA6rO2G8e-RF6ILqmHiZTHyXVnCP4tEK5Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5f1512ca493c540045f240750f8319b0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d318357a-41b0-4555-842d-ff55003934f7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.4738734} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5f1512ca493c540045f240750f8319b0","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bedcb53c-90d0-4df2-8f3d-50be5d17626a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.478358} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5f1512ca493c540045f240750f8319b0","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"e99d9717-6159-4a25-b08a-b4b6aa24fefa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.4889393} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ce612809-6407-4b57-aa59-d331e6bebf4c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.4890041} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"5f1512ca493c540045f240750f8319b0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.488899385Z"}]},"request_id":"f5a3d168-7a85-46ff-a10a-8206cba24c34","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.4934309} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5f1512ca493c540045f240750f8319b0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5f1512ca493c540045f240750f8319b0"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5f1512ca493c540045f240750f8319b0"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"5f1512ca493c540045f240750f8319b0","responseTime":38,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0M30.BE2ga0w2dtA6rO2G8e-RF6ILqmHiZTHyXVnCP4tEK5Q","level":"info","message":"auth send jwt","requestID":"64079d2d1f2cd68c1b08d931c25dfbc4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"64079d2d1f2cd68c1b08d931c25dfbc4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"64079d2d1f2cd68c1b08d931c25dfbc4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":743,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.254023,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:03Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"64079d2d1f2cd68c1b08d931c25dfbc4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293643,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0M30.BE2ga0w2dtA6rO2G8e-RF6ILqmHiZTHyXVnCP4tEK5Q"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"64079d2d1f2cd68c1b08d931c25dfbc4","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.445238108Z"}]},"request_id":"f7c0b3bf-7783-422e-9176-96033aa8fc11","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.9820719} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"64079d2d1f2cd68c1b08d931c25dfbc4","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8eb264b7-06f1-4065-910d-37ab85ab3b1d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.9869144} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"64079d2d1f2cd68c1b08d931c25dfbc4","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.445238108Z"}]},"request_id":"7b8c96f8-929a-45f8-9e03-274243ded081","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293643.9989924} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"64079d2d1f2cd68c1b08d931c25dfbc4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"64079d2d1f2cd68c1b08d931c25dfbc4"} device-1 | {"level":"info","message":"PATCH /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50 200 31ms","method":"PATCH","requestID":"64079d2d1f2cd68c1b08d931c25dfbc4","responseTime":31,"status":200,"url":"/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50"} gateway-1 | {"time_local":"07/Oct/2024:09:34:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"64079d2d1f2cd68c1b08d931c25dfbc4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NH0.9VQ6pTfMwb6KtqbAE-La9aLMh4IlG9s4Nt3VaNmUxCs","level":"info","message":"auth send jwt","requestID":"54aea66f59eb44e069542505a3dc1cdc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"54aea66f59eb44e069542505a3dc1cdc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"54aea66f59eb44e069542505a3dc1cdc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":744,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.358013,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"54aea66f59eb44e069542505a3dc1cdc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293644,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NH0.9VQ6pTfMwb6KtqbAE-La9aLMh4IlG9s4Nt3VaNmUxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"54aea66f59eb44e069542505a3dc1cdc","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"54aea66f59eb44e069542505a3dc1cdc"} device-1 | {"level":"info","message":"POST /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50/websocket 200 17ms","method":"POST","requestID":"54aea66f59eb44e069542505a3dc1cdc","responseTime":17,"status":200,"url":"/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50/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.9","requestID":"54aea66f59eb44e069542505a3dc1cdc"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"89a7306d87ff6258b94959d700f66673","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"89a7306d87ff6258b94959d700f66673","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/fd8cd762-e502-472c-a000-906817fe5d0b/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":"89a7306d87ff6258b94959d700f66673"} device-1 | {"level":"info","message":"OPTIONS /devices/fd8cd762-e502-472c-a000-906817fe5d0b/websocket 200 1ms","method":"OPTIONS","requestID":"89a7306d87ff6258b94959d700f66673","responseTime":1,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY","level":"info","message":"auth send jwt","requestID":"3f47b77d1210029c83dd7dde75c7f276"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3f47b77d1210029c83dd7dde75c7f276","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3f47b77d1210029c83dd7dde75c7f276"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":745,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.32924,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3f47b77d1210029c83dd7dde75c7f276","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3f47b77d1210029c83dd7dde75c7f276","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3f47b77d1210029c83dd7dde75c7f276"} device-1 | {"level":"info","message":"POST /devices/fd8cd762-e502-472c-a000-906817fe5d0b/websocket 200 23ms","method":"POST","requestID":"3f47b77d1210029c83dd7dde75c7f276","responseTime":23,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/fd8cd762-e502-472c-a000-906817fe5d0b/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":"3f47b77d1210029c83dd7dde75c7f276"} device-1 | {"level":"info","message":"device 'http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"868961fe8429cc59185d95e016f708d2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"868961fe8429cc59185d95e016f708d2","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/fd8cd762-e502-472c-a000-906817fe5d0b? 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":"868961fe8429cc59185d95e016f708d2"} device-1 | {"level":"info","message":"OPTIONS /devices/fd8cd762-e502-472c-a000-906817fe5d0b? 200 2ms","method":"OPTIONS","requestID":"868961fe8429cc59185d95e016f708d2","responseTime":2,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY","level":"info","message":"auth send jwt","requestID":"5bcf7b0bcc8dbc2c3ed91a5629364074"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5bcf7b0bcc8dbc2c3ed91a5629364074","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5bcf7b0bcc8dbc2c3ed91a5629364074"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":746,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.218889,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5bcf7b0bcc8dbc2c3ed91a5629364074","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5bcf7b0bcc8dbc2c3ed91a5629364074","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.488899385Z"}]},"request_id":"534e0008-521b-42d6-b547-caf33e6bafcd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.6109898} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5bcf7b0bcc8dbc2c3ed91a5629364074","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3fcdbef8-5d03-41b3-b2e7-ea4211d43823","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.618951} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"5bcf7b0bcc8dbc2c3ed91a5629364074","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.488899385Z"}]},"request_id":"6e46b604-af31-4bb0-989c-e87d1475e01e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.6309} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5bcf7b0bcc8dbc2c3ed91a5629364074","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5bcf7b0bcc8dbc2c3ed91a5629364074"} gateway-1 | {"time_local":"07/Oct/2024:09:34:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/fd8cd762-e502-472c-a000-906817fe5d0b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5bcf7b0bcc8dbc2c3ed91a5629364074"} device-1 | {"level":"info","message":"PATCH /devices/fd8cd762-e502-472c-a000-906817fe5d0b? 200 37ms","method":"PATCH","requestID":"5bcf7b0bcc8dbc2c3ed91a5629364074","responseTime":37,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY","level":"info","message":"auth send jwt","requestID":"271aa95438ee8ebc1e3f641d9b1e4d36"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"271aa95438ee8ebc1e3f641d9b1e4d36","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"271aa95438ee8ebc1e3f641d9b1e4d36"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":747,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.360992,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"271aa95438ee8ebc1e3f641d9b1e4d36","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"271aa95438ee8ebc1e3f641d9b1e4d36","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.445238108Z"}]},"request_id":"07e78977-33be-49b6-a5ee-542a4fb236b5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.6596792} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"271aa95438ee8ebc1e3f641d9b1e4d36","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"271aa95438ee8ebc1e3f641d9b1e4d36"} device-1 | {"level":"info","message":"GET /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50? 200 17ms","method":"GET","requestID":"271aa95438ee8ebc1e3f641d9b1e4d36","responseTime":17,"status":200,"url":"/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50? 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":"271aa95438ee8ebc1e3f641d9b1e4d36"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY","level":"info","message":"auth send jwt","requestID":"94d931bd6c36788af3ef9612b0935f20"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"94d931bd6c36788af3ef9612b0935f20","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"94d931bd6c36788af3ef9612b0935f20"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":748,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.848962,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"94d931bd6c36788af3ef9612b0935f20","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"94d931bd6c36788af3ef9612b0935f20","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.488899385Z"}]},"request_id":"ecf6159d-44d0-4d57-aee6-ab701dda0808","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.6837018} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"94d931bd6c36788af3ef9612b0935f20","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"94d931bd6c36788af3ef9612b0935f20"} gateway-1 | {"time_local":"07/Oct/2024:09:34:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fd8cd762-e502-472c-a000-906817fe5d0b? 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":"94d931bd6c36788af3ef9612b0935f20"} device-1 | {"level":"info","message":"GET /devices/fd8cd762-e502-472c-a000-906817fe5d0b? 200 16ms","method":"GET","requestID":"94d931bd6c36788af3ef9612b0935f20","responseTime":16,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY","level":"info","message":"auth send jwt","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":749,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.334804,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Attempting to run experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Attempting to book experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Successfully booked experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4bb88b70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4bb8d990-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":750,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.851205,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4bb88b70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4bb88b70-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56890","level":"info","msg":"Received request.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:56890","level":"info","msg":"Sent response.","req_id":751,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.717516,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4bb8d990-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"4bb8d990-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.445238108Z"}]},"request_id":"d924d7ac-4033-4d1a-95d9-fb5059ddee57","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.7487524} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4bb88b70-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.488899385Z"}]},"request_id":"40619efe-6319-48e2-b148-c5cff81ffe89","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.7547877} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4bb88b70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4bb8d990-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50? 200 22ms","method":"GET","requestID":"4bb88b70-848f-11ef-9233-95baf63f17e0","responseTime":22,"status":200,"url":"/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4bb8d990-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/fd8cd762-e502-472c-a000-906817fe5d0b? 200 24ms","method":"GET","requestID":"4bb8d990-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Setting up experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Successfully locked booking for experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Attempting to update booking for experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Successfully updated booking for experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Successfully set up experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4bc47250-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4bc4c070-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Successfully running experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bc535a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":752,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.778013,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:56890","level":"info","msg":"Received request.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4bc47250-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"4bc47250-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56890","level":"info","msg":"Sent response.","req_id":753,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.682472,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4bc4c070-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"4bc4c070-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4957cdcf-5de8-41ed-8b1a-cf75c92600f9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.830258} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":754,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.163776,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4bc535a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","object_type":"device","rebac_allow":false,"scope_allow":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":"4bc535a0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.445238108Z"}]},"request_id":"af688e3a-778f-4929-ba30-e2f858c717a3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.8330374} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.488899385Z"}]},"request_id":"b286edd2-4476-44e7-b52c-5b36cdbc6c53","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.8347096} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"4bc47250-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"4bc4c070-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bc535a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50/signaling 200 27ms","method":"POST","requestID":"4bc535a0-848f-11ef-9233-95baf63f17e0","responseTime":27,"status":200,"url":"/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fedd39245-8524-45f3-90a2-e17089ba49d4#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fedd39245-8524-45f3-90a2-e17089ba49d4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"cca357cd-4cec-4bf4-8d08-d9298d1e86ba","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.846211} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4bc47250-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de862abb-4f09-4c16-a37e-ab0e9dc13079","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.8466413} device-1 | {"level":"info","message":"GET /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50? 200 34ms","method":"GET","requestID":"4bc47250-848f-11ef-9233-95baf63f17e0","responseTime":34,"status":200,"url":"/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4bc4c070-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/fd8cd762-e502-472c-a000-906817fe5d0b? 200 35ms","method":"GET","requestID":"4bc4c070-848f-11ef-9233-95baf63f17e0","responseTime":35,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1","responseTime":27,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bca3eb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bca8cd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:56890","level":"info","msg":"Received request.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} gateway-1 | {"time_local":"07/Oct/2024:09:34:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.171","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} experiment-1 | {"level":"info","message":"POST /experiments? 201 166ms","method":"POST","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1","responseTime":166,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bfe59cc4-228a-4eac-9bb0-9d616eb41bcb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.8621998} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4c309130-72be-4fc0-bb59-b5e12bd2b875","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.8622105} authorization-1 | {"client_addr":"127.0.0.1:56890","level":"info","msg":"Sent response.","req_id":756,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.648692,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":755,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":8.258851,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4bca8cd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","object_type":"device","rebac_allow":false,"scope_allow":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":"4bca8cd0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4bca3eb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","object_type":"device","rebac_allow":false,"scope_allow":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":"4bca3eb0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY","level":"info","message":"auth send jwt","requestID":"be706257883d653d6c6905f018a3bae4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"be706257883d653d6c6905f018a3bae4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bca8cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50/signaling 200 18ms","method":"POST","requestID":"4bca8cd0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"be706257883d653d6c6905f018a3bae4"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bca3eb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/fd8cd762-e502-472c-a000-906817fe5d0b/signaling 200 22ms","method":"POST","requestID":"4bca3eb0-848f-11ef-9233-95baf63f17e0","responseTime":22,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bcdc120-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":757,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.107581,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"be706257883d653d6c6905f018a3bae4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"be706257883d653d6c6905f018a3bae4","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56890","level":"info","msg":"Received request.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34: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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.445238108Z"}]},"request_id":"f6bbfc8e-61f4-4316-a38b-93f8a394d772","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.8818622} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6b7e7836-ea12-422d-867a-c694b700253a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.882061} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"be706257883d653d6c6905f018a3bae4","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:56890","level":"info","msg":"Sent response.","req_id":758,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.743094,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4bcdc120-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","object_type":"device","rebac_allow":false,"scope_allow":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":"4bcdc120-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"be706257883d653d6c6905f018a3bae4"} gateway-1 | {"time_local":"07/Oct/2024:09:34:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50? 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":"be706257883d653d6c6905f018a3bae4"} device-1 | {"level":"info","message":"GET /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50? 200 17ms","method":"GET","requestID":"be706257883d653d6c6905f018a3bae4","responseTime":17,"status":200,"url":"/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bcdc120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/fd8cd762-e502-472c-a000-906817fe5d0b/signaling 200 16ms","method":"POST","requestID":"4bcdc120-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4bd0a750-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4bd0ce60-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY","level":"info","message":"auth send jwt","requestID":"69d5cabf0217a177015b8aa9a274dfc1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"69d5cabf0217a177015b8aa9a274dfc1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"69d5cabf0217a177015b8aa9a274dfc1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":759,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.335053,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:56890","level":"info","msg":"Received request.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4bd0a750-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4bd0a750-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56890","level":"info","msg":"Sent response.","req_id":760,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.25779,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4bd0ce60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4bd0ce60-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":761,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.925248,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"69d5cabf0217a177015b8aa9a274dfc1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"69d5cabf0217a177015b8aa9a274dfc1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.445238108Z"}]},"request_id":"74f92323-80b2-49fe-afa2-63e4f8a482ab","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.904569} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4bd0a750-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.488899385Z"}]},"request_id":"7d43f770-ddcc-47b8-bd6d-78c3a13da4f2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.9069526} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4bd0ce60-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:03.488899385Z"}]},"request_id":"b4ab3fad-039e-43e4-bd93-26be39cc9666","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.909663} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"69d5cabf0217a177015b8aa9a274dfc1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4bd0a750-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50? 200 19ms","method":"GET","requestID":"4bd0a750-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4bd0ce60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/fd8cd762-e502-472c-a000-906817fe5d0b? 200 21ms","method":"GET","requestID":"4bd0ce60-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"69d5cabf0217a177015b8aa9a274dfc1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Building connection plan","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} device-1 | {"level":"info","message":"GET /devices/fd8cd762-e502-472c-a000-906817fe5d0b? 200 21ms","method":"GET","requestID":"69d5cabf0217a177015b8aa9a274dfc1","responseTime":21,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/fd8cd762-e502-472c-a000-906817fe5d0b? 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":"69d5cabf0217a177015b8aa9a274dfc1"} 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":"ba17e0b1-2bcd-428d-8ae8-da6a706002af"},{"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":"52854950-55e9-4c3e-8c5b-450ab83a9eab"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"d5cef8d8-dbbb-418c-af88-a88a497ad438"}]},"level":"info","message":"Built pairwise service configurations","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} 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/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50"},{"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/fd8cd762-e502-472c-a000-906817fe5d0b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"4bd49ef0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":762,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.269015,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4bd49ef0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293645,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0NX0.4AoTh-A10lAIf2XAR9e6ItqWpm4Xjmrk09nnr55EUXY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4bd49ef0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"b245d413-0745-441f-8cbe-755b4e164730","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.9348476} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"983ebd77-b1b3-4fd7-a607-1802d57f664c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.9360337} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"4bd49ef0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"4bd49ef0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"4bd49ef0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411'","requestID":"4bd49ef0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411'","requestID":"4bd49ef0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"4bd49ef0-848f-11ef-9233-95baf63f17e0"} 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":"4bd49ef0-848f-11ef-9233-95baf63f17e0","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":"4bd49ef0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"df0d97ac16cd7ff6c4fc1d194c5218b1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4bdeff30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0a08891f-b661-44fb-ab8e-e037e57974ef","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293645.9926746} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":763,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.793836,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4bdeff30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4bdeff30-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4bdeff30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50/signaling 200 10ms","method":"POST","requestID":"4bdeff30-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50/signaling"} device-1 | {"device":"fd8cd762-e502-472c-a000-906817fe5d0b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"fd8cd762-e502-472c-a000-906817fe5d0b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4be0d3f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:06Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7d7f70e2-9c9f-4a00-8228-8fd94113f2e8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293646.003311} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":764,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.404039,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:06Z"} device-1 | {"content":{"sdp":"v=0\r\no=- 331324857966706501 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:03m0\r\na=ice-pwd:CMCc9jE4Y7s7yZdV2ZsJf/n1\r\na=ice-options:trickle\r\na=fingerprint:sha-256 45:B0:C2:98:CA:88:28:49:0E:50:52:C1:2B:63:28:50:4F:E2:6F:78:0A:D3:CE:58:11:98:96:BE:4D:2F:4E:03\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"fd8cd762-e502-472c-a000-906817fe5d0b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4be0d3f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4be0d3f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4be0d3f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/fd8cd762-e502-472c-a000-906817fe5d0b/signaling 200 9ms","method":"POST","requestID":"4be0d3f0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b/signaling"} device-1 | {"device":"fd8cd762-e502-472c-a000-906817fe5d0b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","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":"429b6f46-d2c9-4009-bf58-29a37f767411","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","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":"8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","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":"8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","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":"8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","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/429b6f46-d2c9-4009-bf58-29a37f767411' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"429b6f46-d2c9-4009-bf58-29a37f767411","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"10785ae8207febe109143abc2aad22fd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"10785ae8207febe109143abc2aad22fd","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/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50"},{"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/fd8cd762-e502-472c-a000-906817fe5d0b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411"}}},"level":"info","message":"received a callback","requestID":"10785ae8207febe109143abc2aad22fd"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"10785ae8207febe109143abc2aad22fd","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"10785ae8207febe109143abc2aad22fd"} device-1 | {"content":{"candidate":"candidate:1511902014 1 udp 2113937151 8f2a28d2-ea26-47e9-b914-c6621d7b3bcb.local 59018 typ host generation 0 ufrag 03m0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"fd8cd762-e502-472c-a000-906817fe5d0b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3727728961 1 udp 1677729535 141.24.211.56 59018 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 03m0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"fd8cd762-e502-472c-a000-906817fe5d0b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2369593034 1 udp 33562623 141.24.210.113 55655 typ relay raddr 141.24.211.56 rport 59018 generation 0 ufrag 03m0 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"fd8cd762-e502-472c-a000-906817fe5d0b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"fd8cd762-e502-472c-a000-906817fe5d0b","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/fd8cd762-e502-472c-a000-906817fe5d0b'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b'"} device-1 | {"data":{"peerconnection":"429b6f46-d2c9-4009-bf58-29a37f767411","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","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":"fd8cd762-e502-472c-a000-906817fe5d0b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"429b6f46-d2c9-4009-bf58-29a37f767411","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","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 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"429b6f46-d2c9-4009-bf58-29a37f767411","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e86c3558e94f6047250ddbb42c8ee66e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"e86c3558e94f6047250ddbb42c8ee66e","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/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50"},{"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/fd8cd762-e502-472c-a000-906817fe5d0b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411"}}},"level":"info","message":"received a callback","requestID":"e86c3558e94f6047250ddbb42c8ee66e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"4d21b860-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F429b6f46-d2c9-4009-bf58-29a37f767411","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b7e327dc-495b-4f83-ab67-889b3827fae7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.1090128} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":765,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.231346,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4d21b860-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411","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":"4d21b860-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"4d21b860-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411 200 11ms","method":"GET","requestID":"4d21b860-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"e86c3558e94f6047250ddbb42c8ee66e","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"e86c3558e94f6047250ddbb42c8ee66e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d25d710-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"090a80c0-e03b-4693-8081-ede72dabe156","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.1338594} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":766,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.602564,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4d25d710-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d25d710-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d25d710-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50/signaling 200 9ms","method":"POST","requestID":"4d25d710-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d27abd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a9392a3b-7c01-4804-86fa-a6613b30efe8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.145414} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":767,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.747856,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4d27abd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d27abd0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d27abd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/fd8cd762-e502-472c-a000-906817fe5d0b/signaling 200 9ms","method":"POST","requestID":"4d27abd0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0OH0.97HttAc-asQg2NrJYWzmd_dzcsP-zum1H0vc0Y70hOI","level":"info","message":"auth send jwt","requestID":"7a41e0e365d31d2dfb1412057e6fd7de"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7a41e0e365d31d2dfb1412057e6fd7de","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/edd39245-8524-45f3-90a2-e17089ba49d4","requestID":"7a41e0e365d31d2dfb1412057e6fd7de"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":768,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.286374,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7a41e0e365d31d2dfb1412057e6fd7de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293648,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0OH0.97HttAc-asQg2NrJYWzmd_dzcsP-zum1H0vc0Y70hOI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7a41e0e365d31d2dfb1412057e6fd7de","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/edd39245-8524-45f3-90a2-e17089ba49d4","requestID":"7a41e0e365d31d2dfb1412057e6fd7de"} experiment-1 | {"level":"info","message":"GET /experiments/edd39245-8524-45f3-90a2-e17089ba49d4 200 15ms","method":"GET","requestID":"7a41e0e365d31d2dfb1412057e6fd7de","responseTime":15,"status":200,"url":"/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"} gateway-1 | {"time_local":"07/Oct/2024:09:34:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/edd39245-8524-45f3-90a2-e17089ba49d4 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":"7a41e0e365d31d2dfb1412057e6fd7de"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0OH0.97HttAc-asQg2NrJYWzmd_dzcsP-zum1H0vc0Y70hOI","level":"info","message":"auth send jwt","requestID":"f97f49edb3f5a1fa9e626effe1b03c52"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f97f49edb3f5a1fa9e626effe1b03c52","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/edd39245-8524-45f3-90a2-e17089ba49d4","requestID":"f97f49edb3f5a1fa9e626effe1b03c52"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":769,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.165867,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f97f49edb3f5a1fa9e626effe1b03c52","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293648,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0OH0.97HttAc-asQg2NrJYWzmd_dzcsP-zum1H0vc0Y70hOI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f97f49edb3f5a1fa9e626effe1b03c52","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Attempting to finish experiment","requestID":"f97f49edb3f5a1fa9e626effe1b03c52"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"4d3651d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":770,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.240067,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4d3651d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293648,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0OH0.97HttAc-asQg2NrJYWzmd_dzcsP-zum1H0vc0Y70hOI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4d3651d0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411","device":"fd8cd762-e502-472c-a000-906817fe5d0b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","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":"8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","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":"8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","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/429b6f46-d2c9-4009-bf58-29a37f767411' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"429b6f46-d2c9-4009-bf58-29a37f767411","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F429b6f46-d2c9-4009-bf58-29a37f767411': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F429b6f46-d2c9-4009-bf58-29a37f767411","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"4fe13a46-6272-48b7-bacd-f640725d1140","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.263141} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6eaef03e5f466b9dc5deef91283bc77a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d6d441ea-3851-49a4-a2e1-7b483e89dcd7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.263923} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6eaef03e5f466b9dc5deef91283bc77a","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"4d3651d0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d20831fc09762e2a85c2a48e7ad19de9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50"},{"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/fd8cd762-e502-472c-a000-906817fe5d0b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411"}}},"level":"info","message":"received a callback","requestID":"6eaef03e5f466b9dc5deef91283bc77a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d20831fc09762e2a85c2a48e7ad19de9","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/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50"},{"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/fd8cd762-e502-472c-a000-906817fe5d0b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411"}}},"level":"info","message":"received a callback","requestID":"d20831fc09762e2a85c2a48e7ad19de9"} device-1 | {"data":{"peerconnection":"429b6f46-d2c9-4009-bf58-29a37f767411","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"4d3651d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411 204 51ms","method":"DELETE","requestID":"4d3651d0-848f-11ef-9233-95baf63f17e0","responseTime":51,"status":204,"url":"/peerconnections/429b6f46-d2c9-4009-bf58-29a37f767411"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"},"level":"info","message":"Successfully finished experiment","requestID":"f97f49edb3f5a1fa9e626effe1b03c52"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d419c70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f7c054b-eb71-401d-9330-f7ccf5cb898a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.319054} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":771,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.922096,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4d419c70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50","object_type":"device","rebac_allow":false,"scope_allow":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":"4d419c70-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d419c70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50/signaling 200 16ms","method":"POST","requestID":"4d419c70-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fedd39245-8524-45f3-90a2-e17089ba49d4': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fedd39245-8524-45f3-90a2-e17089ba49d4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"affbc65c-bedb-4be7-9ab1-2f9dbba66874","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.3279233} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c7f2692f-c408-43c3-a5cd-1075956751c6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.3286402} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4d4482a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"f97f49edb3f5a1fa9e626effe1b03c52","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Ffd8cd762-e502-472c-a000-906817fe5d0b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8bf8cd0-aa4d-4e02-8270-5e6773f8b069","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.337225} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":772,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.287273,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4d4482a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/fd8cd762-e502-472c-a000-906817fe5d0b","object_type":"device","rebac_allow":false,"scope_allow":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":"4d4482a0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4d4482a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/fd8cd762-e502-472c-a000-906817fe5d0b/signaling 200 14ms","method":"POST","requestID":"4d4482a0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/fd8cd762-e502-472c-a000-906817fe5d0b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/edd39245-8524-45f3-90a2-e17089ba49d4","requestID":"f97f49edb3f5a1fa9e626effe1b03c52"} gateway-1 | {"time_local":"07/Oct/2024:09:34:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/edd39245-8524-45f3-90a2-e17089ba49d4 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f97f49edb3f5a1fa9e626effe1b03c52"} experiment-1 | {"level":"info","message":"DELETE /experiments/edd39245-8524-45f3-90a2-e17089ba49d4 204 178ms","method":"DELETE","requestID":"f97f49edb3f5a1fa9e626effe1b03c52","responseTime":178,"status":204,"url":"/experiments/edd39245-8524-45f3-90a2-e17089ba49d4"} gateway-1 | {"time_local":"07/Oct/2024:09:34:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3663","request_time":"4.373","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"4c959c771435d55732fcb9b362eda708"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 135ms","method":"POST","requestID":"6eaef03e5f466b9dc5deef91283bc77a","responseTime":135,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"6eaef03e5f466b9dc5deef91283bc77a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 134ms","method":"POST","requestID":"d20831fc09762e2a85c2a48e7ad19de9","responseTime":134,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.141","http_referrer":"","http_user_agent":"node-fetch","requestID":"d20831fc09762e2a85c2a48e7ad19de9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0OH0.97HttAc-asQg2NrJYWzmd_dzcsP-zum1H0vc0Y70hOI","level":"info","message":"auth send jwt","requestID":"4be4db498873df69051ac786750360b8"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"4be4db498873df69051ac786750360b8","responseTime":8,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4be4db498873df69051ac786750360b8"} gateway-1 | {"time_local":"07/Oct/2024:09:34:08 +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.860","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"fde73da6f1e0140c2bd4b59d03f376c8"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":773,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.806299,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:08Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/8329e346-0e0a-44cd-a5e3-3e1f6ad49c50' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4be4db498873df69051ac786750360b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293648,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0OH0.97HttAc-asQg2NrJYWzmd_dzcsP-zum1H0vc0Y70hOI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4be4db498873df69051ac786750360b8","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/fd8cd762-e502-472c-a000-906817fe5d0b' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c0d1bb1c-03b4-4f3c-9462-99c80f656ef5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.4296958} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4be4db498873df69051ac786750360b8","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"43003234-3789-4d46-b161-419a424ebce7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.4356258} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4be4db498873df69051ac786750360b8","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"8f0ee326-fbdc-4f0c-aace-be1f29f5eca4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.4449403} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f112fba8-006c-496e-aecc-b9540fc606fc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.4450657} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"4be4db498873df69051ac786750360b8","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.444916077Z"}]},"request_id":"346f5cc1-300a-4ed4-8b22-e79de5fe72b8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.449529} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4be4db498873df69051ac786750360b8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4be4db498873df69051ac786750360b8"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"4be4db498873df69051ac786750360b8","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:08 +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":"4be4db498873df69051ac786750360b8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0OH0.97HttAc-asQg2NrJYWzmd_dzcsP-zum1H0vc0Y70hOI","level":"info","message":"auth send jwt","requestID":"1b9a6d33808295a4f0e5321a4b7eb578"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"1b9a6d33808295a4f0e5321a4b7eb578","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1b9a6d33808295a4f0e5321a4b7eb578"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":774,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.939019,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1b9a6d33808295a4f0e5321a4b7eb578","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293648,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0OH0.97HttAc-asQg2NrJYWzmd_dzcsP-zum1H0vc0Y70hOI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1b9a6d33808295a4f0e5321a4b7eb578","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d5e18257-440f-4d0c-98ea-f596211d6c89","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.4790585} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b9a6d33808295a4f0e5321a4b7eb578","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"69bd048c-11ee-4e9c-bea4-93b6ff08de02","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.484121} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1b9a6d33808295a4f0e5321a4b7eb578","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"d35afa01-b7c5-45a3-b10b-695f93f68f14","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.4940464} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d27a8f34-4f40-4265-b94e-a05b485d1be7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.4943106} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"1b9a6d33808295a4f0e5321a4b7eb578","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.494023109Z"}]},"request_id":"a9af9947-23eb-4ba6-ab98-afcc9a3304eb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.4982743} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b9a6d33808295a4f0e5321a4b7eb578","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1b9a6d33808295a4f0e5321a4b7eb578"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"1b9a6d33808295a4f0e5321a4b7eb578","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:08 +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":"1b9a6d33808295a4f0e5321a4b7eb578"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0OH0.97HttAc-asQg2NrJYWzmd_dzcsP-zum1H0vc0Y70hOI","level":"info","message":"auth send jwt","requestID":"59f4207cb37e36d0f087789e28e71f07"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"59f4207cb37e36d0f087789e28e71f07","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"59f4207cb37e36d0f087789e28e71f07"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":775,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.982766,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"59f4207cb37e36d0f087789e28e71f07","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293648,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0OH0.97HttAc-asQg2NrJYWzmd_dzcsP-zum1H0vc0Y70hOI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"59f4207cb37e36d0f087789e28e71f07","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.444916077Z"}]},"request_id":"b74d6296-d010-44b7-b3b8-37e9c05ec12a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.9802217} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"59f4207cb37e36d0f087789e28e71f07","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4e8745b2-dfe8-4aca-9280-54e9b4cb7de2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.985018} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"59f4207cb37e36d0f087789e28e71f07","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.444916077Z"}]},"request_id":"6d88f378-7145-437a-a0f9-9eaef1bce405","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293648.9983253} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"59f4207cb37e36d0f087789e28e71f07","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"59f4207cb37e36d0f087789e28e71f07"} gateway-1 | {"time_local":"07/Oct/2024:09:34:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"59f4207cb37e36d0f087789e28e71f07"} device-1 | {"level":"info","message":"PATCH /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b 200 32ms","method":"PATCH","requestID":"59f4207cb37e36d0f087789e28e71f07","responseTime":32,"status":200,"url":"/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0OX0.4-4b08p7BgSmbsKfl1r_7Y_oHQXV8mg_Qy4Fuu4WgTo","level":"info","message":"auth send jwt","requestID":"676043770bb410c9f8ef44f7ebb9105c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"676043770bb410c9f8ef44f7ebb9105c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"676043770bb410c9f8ef44f7ebb9105c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:09Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":776,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.800207,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:09Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"676043770bb410c9f8ef44f7ebb9105c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293649,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY0OX0.4-4b08p7BgSmbsKfl1r_7Y_oHQXV8mg_Qy4Fuu4WgTo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"676043770bb410c9f8ef44f7ebb9105c","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"676043770bb410c9f8ef44f7ebb9105c"} device-1 | {"level":"info","message":"POST /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b/websocket 200 16ms","method":"POST","requestID":"676043770bb410c9f8ef44f7ebb9105c","responseTime":16,"status":200,"url":"/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:09 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b/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.9","requestID":"676043770bb410c9f8ef44f7ebb9105c"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2055c9cded62d5c78df4e7e0471a251d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"2055c9cded62d5c78df4e7e0471a251d","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/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":"2055c9cded62d5c78df4e7e0471a251d"} device-1 | {"level":"info","message":"OPTIONS /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/websocket 200 1ms","method":"OPTIONS","requestID":"2055c9cded62d5c78df4e7e0471a251d","responseTime":1,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY","level":"info","message":"auth send jwt","requestID":"42acaa9ae0c33275e3b05d2ba1887a59"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"42acaa9ae0c33275e3b05d2ba1887a59","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"42acaa9ae0c33275e3b05d2ba1887a59"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":777,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.292871,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"42acaa9ae0c33275e3b05d2ba1887a59","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"42acaa9ae0c33275e3b05d2ba1887a59","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"42acaa9ae0c33275e3b05d2ba1887a59"} gateway-1 | {"time_local":"07/Oct/2024:09:34:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/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":"42acaa9ae0c33275e3b05d2ba1887a59"} device-1 | {"level":"info","message":"POST /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/websocket 200 22ms","method":"POST","requestID":"42acaa9ae0c33275e3b05d2ba1887a59","responseTime":22,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"98b28c06fbf89d345aa44eedc7a0bfb3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"98b28c06fbf89d345aa44eedc7a0bfb3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a? 200 1ms","method":"OPTIONS","requestID":"98b28c06fbf89d345aa44eedc7a0bfb3","responseTime":1,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a? 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":"98b28c06fbf89d345aa44eedc7a0bfb3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY","level":"info","message":"auth send jwt","requestID":"cf4c19f181fc65daac8bc3d54e2ca335"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"cf4c19f181fc65daac8bc3d54e2ca335","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"cf4c19f181fc65daac8bc3d54e2ca335"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":778,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.210993,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"cf4c19f181fc65daac8bc3d54e2ca335","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cf4c19f181fc65daac8bc3d54e2ca335","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.494023109Z"}]},"request_id":"bfa3cffe-3222-40dd-b4a2-deb7733ae85e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.6237385} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cf4c19f181fc65daac8bc3d54e2ca335","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e8521737-c926-4a81-9a8d-4872a38333f0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.6324024} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"cf4c19f181fc65daac8bc3d54e2ca335","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.494023109Z"}]},"request_id":"c761ffb9-fad2-43b7-975f-13acf3a64f00","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.6459737} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cf4c19f181fc65daac8bc3d54e2ca335","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"cf4c19f181fc65daac8bc3d54e2ca335"} gateway-1 | {"time_local":"07/Oct/2024:09:34:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a? 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":"cf4c19f181fc65daac8bc3d54e2ca335"} device-1 | {"level":"info","message":"PATCH /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a? 200 39ms","method":"PATCH","requestID":"cf4c19f181fc65daac8bc3d54e2ca335","responseTime":39,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY","level":"info","message":"auth send jwt","requestID":"43f49fd558a8544859270a1680e8edc4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"43f49fd558a8544859270a1680e8edc4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"43f49fd558a8544859270a1680e8edc4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":779,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.950035,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"43f49fd558a8544859270a1680e8edc4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"43f49fd558a8544859270a1680e8edc4","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.444916077Z"}]},"request_id":"45573ab7-a28c-438c-bfc9-82ee8c4a204d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.6713543} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"43f49fd558a8544859270a1680e8edc4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"43f49fd558a8544859270a1680e8edc4"} gateway-1 | {"time_local":"07/Oct/2024:09:34:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b? 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":"43f49fd558a8544859270a1680e8edc4"} device-1 | {"level":"info","message":"GET /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b? 200 15ms","method":"GET","requestID":"43f49fd558a8544859270a1680e8edc4","responseTime":15,"status":200,"url":"/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY","level":"info","message":"auth send jwt","requestID":"0c1f7703265545d60fe152530fa6019e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0c1f7703265545d60fe152530fa6019e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0c1f7703265545d60fe152530fa6019e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":780,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.27472,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0c1f7703265545d60fe152530fa6019e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"0c1f7703265545d60fe152530fa6019e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.494023109Z"}]},"request_id":"10bda8a0-192a-42e7-9d0e-49b3fde9d6d5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.6979146} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0c1f7703265545d60fe152530fa6019e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0c1f7703265545d60fe152530fa6019e"} gateway-1 | {"time_local":"07/Oct/2024:09:34:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a? 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":"0c1f7703265545d60fe152530fa6019e"} device-1 | {"level":"info","message":"GET /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a? 200 19ms","method":"GET","requestID":"0c1f7703265545d60fe152530fa6019e","responseTime":19,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY","level":"info","message":"auth send jwt","requestID":"38adf56687719febf16953b0ea1416e1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"38adf56687719febf16953b0ea1416e1","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"38adf56687719febf16953b0ea1416e1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":781,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.241535,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"38adf56687719febf16953b0ea1416e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"38adf56687719febf16953b0ea1416e1","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Attempting to run experiment","requestID":"38adf56687719febf16953b0ea1416e1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Attempting to book experiment","requestID":"38adf56687719febf16953b0ea1416e1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Successfully booked experiment","requestID":"38adf56687719febf16953b0ea1416e1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4eb63b10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4eb68930-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":782,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.893518,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4eb63b10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4eb63b10-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":783,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.036154,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4eb68930-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4eb68930-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.444916077Z"}]},"request_id":"8cafbf4b-68ac-4f9f-a1af-9009094b41f3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.7619896} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4eb63b10-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.494023109Z"}]},"request_id":"d62a7ce8-d197-448e-ac10-3525166a6871","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.7658157} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4eb68930-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4eb63b10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b? 200 14ms","method":"GET","requestID":"4eb63b10-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4eb68930-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a? 200 16ms","method":"GET","requestID":"4eb68930-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Setting up experiment","requestID":"38adf56687719febf16953b0ea1416e1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"38adf56687719febf16953b0ea1416e1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Successfully locked booking for experiment","requestID":"38adf56687719febf16953b0ea1416e1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"38adf56687719febf16953b0ea1416e1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"38adf56687719febf16953b0ea1416e1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Attempting to update booking for experiment","requestID":"38adf56687719febf16953b0ea1416e1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Successfully updated booking for experiment","requestID":"38adf56687719febf16953b0ea1416e1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Successfully set up experiment","requestID":"38adf56687719febf16953b0ea1416e1"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4ebf3bc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4ebf62d0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Successfully running experiment","requestID":"38adf56687719febf16953b0ea1416e1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4ebfb0f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":784,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.709271,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4ebf3bc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4ebf3bc0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":785,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.60511,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4ebf62d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4ebf62d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"05d52904-a500-45d7-b96e-45dca8d6fe42","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.8206022} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.444916077Z"}]},"request_id":"13db0d2b-caa9-4ba8-aaf8-b74fad23e99d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.821422} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":786,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.400536,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4ebfb0f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4ebfb0f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4ebf3bc0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.494023109Z"}]},"request_id":"cb92bbdf-fb13-426a-adef-ba5e0110874c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.8223867} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4ebf62d0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4ebfb0f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b/signaling 200 15ms","method":"POST","requestID":"4ebfb0f0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4ebf3bc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b? 200 19ms","method":"GET","requestID":"4ebf3bc0-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4ebf62d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a? 200 21ms","method":"GET","requestID":"4ebf62d0-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2b14c522-38e6-466a-bc3f-b72718e68918#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2b14c522-38e6-466a-bc3f-b72718e68918","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"20f1ae4a-ae58-4e0d-85a1-c4f682517cd2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.8347485} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4ec2be30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7dc65884-19d9-47c4-be99-0180469e4d57","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.8352022} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"38adf56687719febf16953b0ea1416e1","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4ec2e540-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"97fa6110-dd4e-42b4-bb29-830be01a1a61","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.8403335} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":787,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.346669,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4ec2be30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","object_type":"device","rebac_allow":false,"scope_allow":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":"4ec2be30-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"745b3c71-c3fc-4d18-a9e8-9981a8ad138d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.841899} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":788,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.873738,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"38adf56687719febf16953b0ea1416e1"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4ec2e540-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","object_type":"device","rebac_allow":false,"scope_allow":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":"4ec2e540-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:34:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"38adf56687719febf16953b0ea1416e1"} experiment-1 | {"level":"info","message":"POST /experiments? 201 131ms","method":"POST","requestID":"38adf56687719febf16953b0ea1416e1","responseTime":131,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4ec2be30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/signaling 200 12ms","method":"POST","requestID":"4ec2be30-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4ec2e540-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b/signaling 200 12ms","method":"POST","requestID":"4ec2e540-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY","level":"info","message":"auth send jwt","requestID":"14346226595a003f2012a69a9e0fa709"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"14346226595a003f2012a69a9e0fa709","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"14346226595a003f2012a69a9e0fa709"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4ec50820-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":789,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.777962,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"14346226595a003f2012a69a9e0fa709","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"14346226595a003f2012a69a9e0fa709","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8cf18d7e-7f3b-4510-887f-a18db4cbf8eb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.8550773} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":790,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.37406,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4ec50820-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4ec50820-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4ec50820-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/signaling 200 9ms","method":"POST","requestID":"4ec50820-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.444916077Z"}]},"request_id":"468ebfe8-02b2-470a-919f-5f5acd961476","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.8595235} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"38adf56687719febf16953b0ea1416e1"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"14346226595a003f2012a69a9e0fa709","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4ec6dce0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4ec703f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"14346226595a003f2012a69a9e0fa709"} gateway-1 | {"time_local":"07/Oct/2024:09:34:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b? 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":"14346226595a003f2012a69a9e0fa709"} device-1 | {"level":"info","message":"GET /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b? 200 16ms","method":"GET","requestID":"14346226595a003f2012a69a9e0fa709","responseTime":16,"status":200,"url":"/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":791,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.759602,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4ec6dce0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4ec6dce0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":792,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.889348,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4ec703f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4ec703f0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY","level":"info","message":"auth send jwt","requestID":"6ccd83a6aa74fffa630235d29cae0424"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6ccd83a6aa74fffa630235d29cae0424","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ccd83a6aa74fffa630235d29cae0424"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.444916077Z"}]},"request_id":"5d2c2005-a56b-4148-bc2f-a18b77d2dbd3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.8702238} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4ec6dce0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.494023109Z"}]},"request_id":"3421dcd3-3b34-4d29-9c03-82298ab4254e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.8711634} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4ec703f0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":793,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.681366,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4ec6dce0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6ccd83a6aa74fffa630235d29cae0424","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"6ccd83a6aa74fffa630235d29cae0424","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b? 200 12ms","method":"GET","requestID":"4ec6dce0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4ec703f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a? 200 12ms","method":"GET","requestID":"4ec703f0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Building connection plan","requestID":"38adf56687719febf16953b0ea1416e1"} 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":"c4f2e964-129f-45dc-adf8-60607a0810c0"},{"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":"7088794d-d920-4e66-be89-e90dac68de97"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"44ac9542-21c1-432e-9b37-76a76ba5bf22"}]},"level":"info","message":"Built pairwise service configurations","requestID":"38adf56687719febf16953b0ea1416e1"} 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/2fc8c78b-2ab3-435f-82c9-f74f3514d65b"},{"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/27ffe1dc-d8a8-4683-bebe-7545b3241c9a"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"38adf56687719febf16953b0ea1416e1"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:08.494023109Z"}]},"request_id":"9071861e-090b-45a4-a44d-bcad6f21ef8f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.8788223} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"4ec94de0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6ccd83a6aa74fffa630235d29cae0424","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ccd83a6aa74fffa630235d29cae0424"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":794,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.770146,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a? 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":"6ccd83a6aa74fffa630235d29cae0424"} device-1 | {"level":"info","message":"GET /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a? 200 12ms","method":"GET","requestID":"6ccd83a6aa74fffa630235d29cae0424","responseTime":12,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4ec94de0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293650,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1MH0.SXzAAEXkJKuN-68BviE1n197vpqxRL00IiNb-5N13pY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4ec94de0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"2a034f08-434b-4be5-9b6d-937c4f22d260","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.8894696} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6f2b6a71-eaab-4531-b1a7-bd2ba8457db0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.889791} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4ec94de0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"4ec94de0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"4ec94de0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78'","requestID":"4ec94de0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78'","requestID":"4ec94de0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"4ec94de0-848f-11ef-9233-95baf63f17e0"} 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":"4ec94de0-848f-11ef-9233-95baf63f17e0","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":"4ec94de0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"38adf56687719febf16953b0ea1416e1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4ed11610-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"639863d7-b312-4b60-80ea-e4f80714b98c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.933728} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":795,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.078494,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4ed11610-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4ed11610-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4ed11610-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b/signaling 200 8ms","method":"POST","requestID":"4ed11610-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"4ed29cb0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab3c1c3a-f63f-4bba-9cde-dd083eab4f64","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293650.9431684} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":796,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.253472,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4ed29cb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","object_type":"device","rebac_allow":false,"scope_allow":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":"4ed29cb0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"4ed29cb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/signaling 200 8ms","method":"POST","requestID":"4ed29cb0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/signaling"} device-1 | {"device":"27ffe1dc-d8a8-4683-bebe-7545b3241c9a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"27ffe1dc-d8a8-4683-bebe-7545b3241c9a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 597603850237844429 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:44No\r\na=ice-pwd:kNhQ2YRv9iLsMspZVW6X9nEQ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 AA:21:79:5E:06:3D:CF:94:1C:77:DF:E5:B0:45:08:E7:DC:BE:6D:34:69:BE:FA:B6:AD:81:C9:55:D0:EB:A8:4F\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"27ffe1dc-d8a8-4683-bebe-7545b3241c9a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"27ffe1dc-d8a8-4683-bebe-7545b3241c9a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"2fc8c78b-2ab3-435f-82c9-f74f3514d65b","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":"1b985418-3aca-462d-b742-e805c0b65f78","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2fc8c78b-2ab3-435f-82c9-f74f3514d65b","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":"2fc8c78b-2ab3-435f-82c9-f74f3514d65b","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":"2fc8c78b-2ab3-435f-82c9-f74f3514d65b","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":"2fc8c78b-2ab3-435f-82c9-f74f3514d65b","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/1b985418-3aca-462d-b742-e805c0b65f78' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1b985418-3aca-462d-b742-e805c0b65f78","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"69f56d22323fa4615b73afa84f81608b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"69f56d22323fa4615b73afa84f81608b","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b"},{"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/27ffe1dc-d8a8-4683-bebe-7545b3241c9a"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78"}}},"level":"info","message":"received a callback","requestID":"69f56d22323fa4615b73afa84f81608b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"69f56d22323fa4615b73afa84f81608b","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"69f56d22323fa4615b73afa84f81608b"} device-1 | {"content":{"candidate":"candidate:2726539979 1 udp 2113937151 a9ab5d29-9b9b-49f8-b9a0-bd80b2f42111.local 40063 typ host generation 0 ufrag 44No network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"27ffe1dc-d8a8-4683-bebe-7545b3241c9a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:648992948 1 udp 1677729535 141.24.211.56 40063 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 44No network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"27ffe1dc-d8a8-4683-bebe-7545b3241c9a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1973643071 1 udp 33562623 141.24.210.113 57068 typ relay raddr 141.24.211.56 rport 40063 generation 0 ufrag 44No network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"27ffe1dc-d8a8-4683-bebe-7545b3241c9a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"27ffe1dc-d8a8-4683-bebe-7545b3241c9a","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/27ffe1dc-d8a8-4683-bebe-7545b3241c9a'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a'"} device-1 | {"data":{"peerconnection":"1b985418-3aca-462d-b742-e805c0b65f78","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2fc8c78b-2ab3-435f-82c9-f74f3514d65b","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":"27ffe1dc-d8a8-4683-bebe-7545b3241c9a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"2fc8c78b-2ab3-435f-82c9-f74f3514d65b","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":"1b985418-3aca-462d-b742-e805c0b65f78","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/1b985418-3aca-462d-b742-e805c0b65f78' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1b985418-3aca-462d-b742-e805c0b65f78","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ce5596d8b2dd17c30962379a14e226dc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ce5596d8b2dd17c30962379a14e226dc","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b"},{"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/27ffe1dc-d8a8-4683-bebe-7545b3241c9a"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78"}}},"level":"info","message":"received a callback","requestID":"ce5596d8b2dd17c30962379a14e226dc"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"50133300-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1b985418-3aca-462d-b742-e805c0b65f78","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"636bfc1a-75f3-45ba-95f9-7effbea0d3fe","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.0459545} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":797,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.636624,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50133300-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78","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":"50133300-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"50133300-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/1b985418-3aca-462d-b742-e805c0b65f78 200 11ms","method":"GET","requestID":"50133300-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 41ms","method":"POST","requestID":"ce5596d8b2dd17c30962379a14e226dc","responseTime":41,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch","requestID":"ce5596d8b2dd17c30962379a14e226dc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50186320-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f95a0a40-e766-41e2-83b4-04fba67b24b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.0811615} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":798,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.665917,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50186320-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","object_type":"device","rebac_allow":false,"scope_allow":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":"50186320-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50186320-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b/signaling 200 14ms","method":"POST","requestID":"50186320-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"501ad420-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"79d42e1c-aecd-46b0-9f5f-aace301ca245","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.097969} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":799,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.002695,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"501ad420-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","object_type":"device","rebac_allow":false,"scope_allow":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":"501ad420-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"501ad420-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/signaling 200 15ms","method":"POST","requestID":"501ad420-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY","level":"info","message":"auth send jwt","requestID":"00f1d27ea69cd934cb09b56582e106e9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"00f1d27ea69cd934cb09b56582e106e9","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2b14c522-38e6-466a-bc3f-b72718e68918","requestID":"00f1d27ea69cd934cb09b56582e106e9"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":800,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.384527,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"00f1d27ea69cd934cb09b56582e106e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"00f1d27ea69cd934cb09b56582e106e9","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2b14c522-38e6-466a-bc3f-b72718e68918","requestID":"00f1d27ea69cd934cb09b56582e106e9"} experiment-1 | {"level":"info","message":"GET /experiments/2b14c522-38e6-466a-bc3f-b72718e68918 200 15ms","method":"GET","requestID":"00f1d27ea69cd934cb09b56582e106e9","responseTime":15,"status":200,"url":"/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2b14c522-38e6-466a-bc3f-b72718e68918 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":"00f1d27ea69cd934cb09b56582e106e9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY","level":"info","message":"auth send jwt","requestID":"4465b310a0a5755044ca253f8631d96c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4465b310a0a5755044ca253f8631d96c","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2b14c522-38e6-466a-bc3f-b72718e68918","requestID":"4465b310a0a5755044ca253f8631d96c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":801,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.159491,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4465b310a0a5755044ca253f8631d96c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4465b310a0a5755044ca253f8631d96c","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Attempting to finish experiment","requestID":"4465b310a0a5755044ca253f8631d96c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"50273030-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":802,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.116728,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50273030-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"50273030-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78","device":"27ffe1dc-d8a8-4683-bebe-7545b3241c9a","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"2fc8c78b-2ab3-435f-82c9-f74f3514d65b","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":"2fc8c78b-2ab3-435f-82c9-f74f3514d65b","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":"2fc8c78b-2ab3-435f-82c9-f74f3514d65b","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/1b985418-3aca-462d-b742-e805c0b65f78' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1b985418-3aca-462d-b742-e805c0b65f78","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1b985418-3aca-462d-b742-e805c0b65f78': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1b985418-3aca-462d-b742-e805c0b65f78","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"214a9c40-8315-40d4-957f-e839f19d7cb5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.1918008} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"26fa3399b37e3714979d890a659769ab","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"281551db-31b9-45df-a0a1-2118657b366c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.1921449} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"26fa3399b37e3714979d890a659769ab","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b"},{"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/27ffe1dc-d8a8-4683-bebe-7545b3241c9a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78"}}},"level":"info","message":"received a callback","requestID":"26fa3399b37e3714979d890a659769ab"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"50273030-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"40d7b494ea044ebc66acb85b1e1ecb3c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"40d7b494ea044ebc66acb85b1e1ecb3c","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/2fc8c78b-2ab3-435f-82c9-f74f3514d65b"},{"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/27ffe1dc-d8a8-4683-bebe-7545b3241c9a"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78"}}},"level":"info","message":"received a callback","requestID":"40d7b494ea044ebc66acb85b1e1ecb3c"} device-1 | {"data":{"peerconnection":"1b985418-3aca-462d-b742-e805c0b65f78","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"50273030-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/1b985418-3aca-462d-b742-e805c0b65f78 204 42ms","method":"DELETE","requestID":"50273030-848f-11ef-9233-95baf63f17e0","responseTime":42,"status":204,"url":"/peerconnections/1b985418-3aca-462d-b742-e805c0b65f78"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"},"level":"info","message":"Successfully finished experiment","requestID":"4465b310a0a5755044ca253f8631d96c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5030f430-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2fc8c78b-2ab3-435f-82c9-f74f3514d65b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"40dd7df8-211c-4e37-8aa2-a48c75193069","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.239444} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":803,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.133134,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5030f430-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b","object_type":"device","rebac_allow":false,"scope_allow":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":"5030f430-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5030f430-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b/signaling 200 8ms","method":"POST","requestID":"5030f430-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"503253c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2b14c522-38e6-466a-bc3f-b72718e68918': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2b14c522-38e6-466a-bc3f-b72718e68918","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"4e8b838a-4bcf-4464-a85e-529387802267","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.245641} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b0a6ef4-e8aa-4744-80ce-589d30e69ccf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.2459443} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"4465b310a0a5755044ca253f8631d96c","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F27ffe1dc-d8a8-4683-bebe-7545b3241c9a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"61d25b2c-f7ea-4a9b-a190-3819adafe84e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.2504528} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":804,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.10414,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"503253c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a","object_type":"device","rebac_allow":false,"scope_allow":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":"503253c0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"503253c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/signaling 200 12ms","method":"POST","requestID":"503253c0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/27ffe1dc-d8a8-4683-bebe-7545b3241c9a/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2b14c522-38e6-466a-bc3f-b72718e68918","requestID":"4465b310a0a5755044ca253f8631d96c"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2b14c522-38e6-466a-bc3f-b72718e68918 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":"4465b310a0a5755044ca253f8631d96c"} experiment-1 | {"level":"info","message":"DELETE /experiments/2b14c522-38e6-466a-bc3f-b72718e68918 204 158ms","method":"DELETE","requestID":"4465b310a0a5755044ca253f8631d96c","responseTime":158,"status":204,"url":"/experiments/2b14c522-38e6-466a-bc3f-b72718e68918"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3662","request_time":"4.289","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"ca0454aa06b8316609cfe390604cde93"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 124ms","method":"POST","requestID":"26fa3399b37e3714979d890a659769ab","responseTime":124,"status":200,"url":"/callbacks/experiment"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"40d7b494ea044ebc66acb85b1e1ecb3c","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"26fa3399b37e3714979d890a659769ab"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"40d7b494ea044ebc66acb85b1e1ecb3c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY","level":"info","message":"auth send jwt","requestID":"19e1f595e4edae896ffe3b2ce318c92a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"19e1f595e4edae896ffe3b2ce318c92a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"19e1f595e4edae896ffe3b2ce318c92a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2fc8c78b-2ab3-435f-82c9-f74f3514d65b' closed"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":805,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.881032,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +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.763","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"620be3292f65f5da1c490c8a43f6bc77"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"19e1f595e4edae896ffe3b2ce318c92a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"19e1f595e4edae896ffe3b2ce318c92a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"897f65cd-189d-42f1-978a-7aa7713e5c3c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.3428595} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19e1f595e4edae896ffe3b2ce318c92a","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/27ffe1dc-d8a8-4683-bebe-7545b3241c9a' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63d88210-a7e5-422d-8a4e-25dc17ad59c6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.3483694} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"19e1f595e4edae896ffe3b2ce318c92a","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"1f9dd07b-5182-4100-bc86-89140f92b71a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.3583925} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"914f9678-be33-4a9e-b7dd-2c51654254df","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.3585892} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"19e1f595e4edae896ffe3b2ce318c92a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.358363790Z"}]},"request_id":"30a756dd-4b70-42ba-8e0a-b5ba5ad8fa05","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.3633416} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"19e1f595e4edae896ffe3b2ce318c92a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"19e1f595e4edae896ffe3b2ce318c92a"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"19e1f595e4edae896ffe3b2ce318c92a","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +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":"19e1f595e4edae896ffe3b2ce318c92a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY","level":"info","message":"auth send jwt","requestID":"4de0411123eff869e082b13d50c0af4d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4de0411123eff869e082b13d50c0af4d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4de0411123eff869e082b13d50c0af4d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":806,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.686805,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4de0411123eff869e082b13d50c0af4d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4de0411123eff869e082b13d50c0af4d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"46fe1856-1a83-4929-a33a-0e91c2881225","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.3932707} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4de0411123eff869e082b13d50c0af4d","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d83491d-2c35-428d-a6c1-7b8c06d2a754","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.3975263} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4de0411123eff869e082b13d50c0af4d","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"af4062c8-4702-4164-bb46-7fac7f6362fe","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.40864} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6c5e629-bcdb-469f-9ece-c6a6c7f3d3d1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.4088135} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"4de0411123eff869e082b13d50c0af4d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.408615698Z"}]},"request_id":"2fa57c30-d9c0-4862-9b1e-7b59db066422","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.4126034} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4de0411123eff869e082b13d50c0af4d","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4de0411123eff869e082b13d50c0af4d"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"4de0411123eff869e082b13d50c0af4d","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +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":"4de0411123eff869e082b13d50c0af4d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY","level":"info","message":"auth send jwt","requestID":"7da9932d8196c53ba3efbca26ee9bc73"} authentication-1 | {"level":"info","message":"GET /auth 200 8ms","method":"GET","requestID":"7da9932d8196c53ba3efbca26ee9bc73","responseTime":8,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY","level":"info","message":"auth send jwt","requestID":"7de9b712ff683e06482655792f69e1f4"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"7de9b712ff683e06482655792f69e1f4","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7da9932d8196c53ba3efbca26ee9bc73"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7de9b712ff683e06482655792f69e1f4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":807,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.80531,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7da9932d8196c53ba3efbca26ee9bc73","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7da9932d8196c53ba3efbca26ee9bc73","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":808,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.336092,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7de9b712ff683e06482655792f69e1f4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7de9b712ff683e06482655792f69e1f4","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.408615698Z"}]},"request_id":"81d0131e-2c22-4d7b-8c5e-5cee4b96616d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.8944316} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7da9932d8196c53ba3efbca26ee9bc73","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.358363790Z"}]},"request_id":"ecdfea47-9ad1-4051-8e29-5d3716e8aae1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.8952384} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7de9b712ff683e06482655792f69e1f4","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"50586f63-094b-4440-a1e1-87d94e53536f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.8996174} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7da9932d8196c53ba3efbca26ee9bc73","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0aef19cb-6598-4a8c-beda-e7e9f0d764e2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.9011855} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7de9b712ff683e06482655792f69e1f4","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.358363790Z"}]},"request_id":"d188ce06-a7b7-4259-aea9-5497cc22f5eb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.9063663} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7de9b712ff683e06482655792f69e1f4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7de9b712ff683e06482655792f69e1f4"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"7de9b712ff683e06482655792f69e1f4"} device-1 | {"level":"info","message":"PATCH /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24 200 24ms","method":"PATCH","requestID":"7de9b712ff683e06482655792f69e1f4","responseTime":24,"status":200,"url":"/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY","level":"info","message":"auth send jwt","requestID":"882d5fe8d5a953a8e51ba81fccb41037"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"882d5fe8d5a953a8e51ba81fccb41037","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"882d5fe8d5a953a8e51ba81fccb41037"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":809,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.617302,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"882d5fe8d5a953a8e51ba81fccb41037","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"882d5fe8d5a953a8e51ba81fccb41037","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.408615698Z"}]},"request_id":"7889f704-7265-425a-b47e-e15262ee3e88","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.9185195} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7da9932d8196c53ba3efbca26ee9bc73","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7da9932d8196c53ba3efbca26ee9bc73"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/76a780ce-b652-474f-b0dd-c47f15db92a2 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.048","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"7da9932d8196c53ba3efbca26ee9bc73"} device-1 | {"level":"info","message":"PATCH /devices/76a780ce-b652-474f-b0dd-c47f15db92a2 200 38ms","method":"PATCH","requestID":"7da9932d8196c53ba3efbca26ee9bc73","responseTime":38,"status":200,"url":"/devices/76a780ce-b652-474f-b0dd-c47f15db92a2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY","level":"info","message":"auth send jwt","requestID":"35e42176d2f1acd2fcfeba8d3c72dd68"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"35e42176d2f1acd2fcfeba8d3c72dd68","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"35e42176d2f1acd2fcfeba8d3c72dd68"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":810,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.077346,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"35e42176d2f1acd2fcfeba8d3c72dd68","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"35e42176d2f1acd2fcfeba8d3c72dd68","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"882d5fe8d5a953a8e51ba81fccb41037"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24/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.9","requestID":"882d5fe8d5a953a8e51ba81fccb41037"} device-1 | {"level":"info","message":"POST /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24/websocket 200 18ms","method":"POST","requestID":"882d5fe8d5a953a8e51ba81fccb41037","responseTime":18,"status":200,"url":"/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"35e42176d2f1acd2fcfeba8d3c72dd68"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/76a780ce-b652-474f-b0dd-c47f15db92a2/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.9","requestID":"35e42176d2f1acd2fcfeba8d3c72dd68"} device-1 | {"level":"info","message":"POST /devices/76a780ce-b652-474f-b0dd-c47f15db92a2/websocket 200 15ms","method":"POST","requestID":"35e42176d2f1acd2fcfeba8d3c72dd68","responseTime":15,"status":200,"url":"/devices/76a780ce-b652-474f-b0dd-c47f15db92a2/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY","level":"info","message":"auth send jwt","requestID":"0e572eed1769575da7e4b814d0d87f49"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"0e572eed1769575da7e4b814d0d87f49","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0e572eed1769575da7e4b814d0d87f49"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":811,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.647227,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0e572eed1769575da7e4b814d0d87f49","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0e572eed1769575da7e4b814d0d87f49","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.358363790Z"}]},"request_id":"ce7352b3-ca1b-4f31-9378-22daa20b8c40","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.975133} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0e572eed1769575da7e4b814d0d87f49","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0e572eed1769575da7e4b814d0d87f49"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0e572eed1769575da7e4b814d0d87f49"} device-1 | {"level":"info","message":"GET /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24? 200 10ms","method":"GET","requestID":"0e572eed1769575da7e4b814d0d87f49","responseTime":10,"status":200,"url":"/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY","level":"info","message":"auth send jwt","requestID":"3773743922f7c3e2c3ba464a07e4e959"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3773743922f7c3e2c3ba464a07e4e959","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3773743922f7c3e2c3ba464a07e4e959"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":812,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.670984,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3773743922f7c3e2c3ba464a07e4e959","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3773743922f7c3e2c3ba464a07e4e959","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.408615698Z"}]},"request_id":"a6ea4877-658a-43a9-ba04-9dd270da714e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293653.9899871} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3773743922f7c3e2c3ba464a07e4e959","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3773743922f7c3e2c3ba464a07e4e959"} device-1 | {"level":"info","message":"GET /devices/76a780ce-b652-474f-b0dd-c47f15db92a2? 200 10ms","method":"GET","requestID":"3773743922f7c3e2c3ba464a07e4e959","responseTime":10,"status":200,"url":"/devices/76a780ce-b652-474f-b0dd-c47f15db92a2?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/76a780ce-b652-474f-b0dd-c47f15db92a2? HTTP/1.1","status": "200","body_bytes_sent":"1330","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3773743922f7c3e2c3ba464a07e4e959"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY","level":"info","message":"auth send jwt","requestID":"c6e1e30b119482c7c24288a1f8350c83"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c6e1e30b119482c7c24288a1f8350c83","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"c6e1e30b119482c7c24288a1f8350c83"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":813,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.712721,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c6e1e30b119482c7c24288a1f8350c83","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c6e1e30b119482c7c24288a1f8350c83","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Attempting to run experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Attempting to book experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Successfully booked experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"50aab810-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"50aadf20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":814,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.951119,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50aab810-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"50aab810-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":815,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.660264,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50aadf20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"50aadf20-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.358363790Z"}]},"request_id":"1e4740b4-1154-4fab-8c99-4e4c6ea1c7ac","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.042208} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50aab810-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.408615698Z"}]},"request_id":"cc88b8ec-1772-4984-b814-bebb8342a43b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.043513} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50aadf20-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"50aab810-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24? 200 14ms","method":"GET","requestID":"50aab810-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"50aadf20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/76a780ce-b652-474f-b0dd-c47f15db92a2? 200 14ms","method":"GET","requestID":"50aadf20-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/76a780ce-b652-474f-b0dd-c47f15db92a2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Setting up experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Successfully locked booking for experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Attempting to update booking for experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Successfully updated booking for experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Successfully set up experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"50b36aa0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"50b391b0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Successfully running experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50b3dfd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":816,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.116196,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50b36aa0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"50b36aa0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":817,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.300227,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50b391b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"50b391b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.358363790Z"}]},"request_id":"165d269d-8022-42aa-a734-67e7b03a69da","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.1067362} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.408615698Z"}]},"request_id":"0abefc66-0781-4fc6-8fa8-b2f9f54e9c43","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.10758} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"50b36aa0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50b391b0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:34160","level":"info","msg":"Received request.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"50b36aa0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b00b42a5-4f17-452f-b392-5efd2fb887e1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.1118286} authorization-1 | {"client_addr":"127.0.0.1:34160","level":"info","msg":"Sent response.","req_id":818,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.888589,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} device-1 | {"level":"info","message":"GET /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24? 200 24ms","method":"GET","requestID":"50b36aa0-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"50b391b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50b3dfd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","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 /devices/76a780ce-b652-474f-b0dd-c47f15db92a2? 200 24ms","method":"GET","requestID":"50b391b0-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/76a780ce-b652-474f-b0dd-c47f15db92a2?"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"50b3dfd0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5f1de403-a197-43bf-b947-f30681261510#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5f1de403-a197-43bf-b947-f30681261510","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"f7dad594-30d1-44b2-96c2-8620f15d3906","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.1142867} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9865e355-360a-4c42-9122-88c7d2e6cb66","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.114631} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"c6e1e30b119482c7c24288a1f8350c83","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50b3dfd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24/signaling 200 25ms","method":"POST","requestID":"50b3dfd0-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50b7d770-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50b873b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c1a761af-eef5-490a-a8b9-84d621b57a3a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.124346} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":819,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.251942,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"c6e1e30b119482c7c24288a1f8350c83"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50b7d770-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","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":"07/Oct/2024:09:34:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.132","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c6e1e30b119482c7c24288a1f8350c83"} experiment-1 | {"level":"info","message":"POST /experiments? 201 128ms","method":"POST","requestID":"c6e1e30b119482c7c24288a1f8350c83","responseTime":128,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"50b7d770-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6745a559-bd77-4ac0-95c4-94e0ea4c60f7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.1282718} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":820,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.02386,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50b7d770-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50b873b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","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/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24/signaling 200 11ms","method":"POST","requestID":"50b7d770-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24/signaling"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"50b873b0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1NH0.yi8qaE8cYVIJc_9UfLTc3nFVcf2WGcDSY4Z-vI9zrNg","level":"info","message":"auth send jwt","requestID":"4eb55ea6508a71d953b236ec3c70e7dc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4eb55ea6508a71d953b236ec3c70e7dc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50b9fa50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4eb55ea6508a71d953b236ec3c70e7dc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50b873b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/76a780ce-b652-474f-b0dd-c47f15db92a2/signaling 200 13ms","method":"POST","requestID":"50b873b0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/76a780ce-b652-474f-b0dd-c47f15db92a2/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"040f96fb-c588-4528-94ff-ce5f93b5b3c0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.1377892} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":822,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.89021,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4eb55ea6508a71d953b236ec3c70e7dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293654,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1NH0.yi8qaE8cYVIJc_9UfLTc3nFVcf2WGcDSY4Z-vI9zrNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4eb55ea6508a71d953b236ec3c70e7dc","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":821,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.490662,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50b9fa50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"50b9fa50-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.358363790Z"}]},"request_id":"de6311f9-c7ed-4edb-906d-be5c1ae62508","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.1415925} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50b9fa50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/76a780ce-b652-474f-b0dd-c47f15db92a2/signaling 200 9ms","method":"POST","requestID":"50b9fa50-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/76a780ce-b652-474f-b0dd-c47f15db92a2/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4eb55ea6508a71d953b236ec3c70e7dc","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"50bba800-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"50bbcf10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4eb55ea6508a71d953b236ec3c70e7dc"} gateway-1 | {"time_local":"07/Oct/2024:09:34:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24? 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":"4eb55ea6508a71d953b236ec3c70e7dc"} device-1 | {"level":"info","message":"GET /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24? 200 13ms","method":"GET","requestID":"4eb55ea6508a71d953b236ec3c70e7dc","responseTime":13,"status":200,"url":"/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":823,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.907789,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50bba800-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"50bba800-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":824,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.012856,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50bbcf10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"50bbcf10-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1NH0.yi8qaE8cYVIJc_9UfLTc3nFVcf2WGcDSY4Z-vI9zrNg","level":"info","message":"auth send jwt","requestID":"5c12c73e01c0059144ac1702790ef15a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5c12c73e01c0059144ac1702790ef15a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.358363790Z"}]},"request_id":"05a1c497-a4b0-431d-8d1b-2cd74bb5c1d5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.1519501} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c12c73e01c0059144ac1702790ef15a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50bba800-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.408615698Z"}]},"request_id":"8cbb5c66-138a-4184-8b82-0d3ce9938399","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.1532054} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"50bbcf10-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":825,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.721396,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c12c73e01c0059144ac1702790ef15a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293654,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1NH0.yi8qaE8cYVIJc_9UfLTc3nFVcf2WGcDSY4Z-vI9zrNg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"5c12c73e01c0059144ac1702790ef15a","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"50bba800-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24? 200 14ms","method":"GET","requestID":"50bba800-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"50bbcf10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/76a780ce-b652-474f-b0dd-c47f15db92a2? 200 13ms","method":"GET","requestID":"50bbcf10-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/76a780ce-b652-474f-b0dd-c47f15db92a2?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:13.408615698Z"}]},"request_id":"232b34b4-16a0-4ff1-8463-a4035f3e1258","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.1591382} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Building connection plan","requestID":"c6e1e30b119482c7c24288a1f8350c83"} 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":"66d4b0ca-cd5d-4a5e-9af1-2550c4c97153"},{"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":"6c55391c-27cd-4fef-ad83-74f21dcb62bb"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"946cdab4-b826-4958-bde3-2cbb4c77590f"}]},"level":"info","message":"Built pairwise service configurations","requestID":"c6e1e30b119482c7c24288a1f8350c83"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5c12c73e01c0059144ac1702790ef15a","responseTime":2,"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/76a780ce-b652-474f-b0dd-c47f15db92a2"},{"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/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"c6e1e30b119482c7c24288a1f8350c83"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"50be4010-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c12c73e01c0059144ac1702790ef15a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:14 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/76a780ce-b652-474f-b0dd-c47f15db92a2? 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":"5c12c73e01c0059144ac1702790ef15a"} device-1 | {"level":"info","message":"GET /devices/76a780ce-b652-474f-b0dd-c47f15db92a2? 200 10ms","method":"GET","requestID":"5c12c73e01c0059144ac1702790ef15a","responseTime":10,"status":200,"url":"/devices/76a780ce-b652-474f-b0dd-c47f15db92a2?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":826,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.732834,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50be4010-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293653,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1M30.SZ2A27-EOUwysWCTP5QKcSqe0_4pNwBkd1BGYuDFfAY"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"50be4010-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"f42fb2f2-2251-4de1-a54d-8648b3aafbe0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.1705587} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d662769-9f1e-4aaa-a4ac-53e690169499","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.1707897} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"50be4010-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"50be4010-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"50be4010-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92'","requestID":"50be4010-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92'","requestID":"50be4010-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"50be4010-848f-11ef-9233-95baf63f17e0"} 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":"50be4010-848f-11ef-9233-95baf63f17e0","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":"50be4010-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"c6e1e30b119482c7c24288a1f8350c83"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50c5e130-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8bedec1f-bb90-4d93-b703-712cc13cb8c9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.2156122} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":827,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.545892,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50c5e130-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"50c5e130-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50c5e130-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24/signaling 200 8ms","method":"POST","requestID":"50c5e130-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"50c740c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"28c66a30-d6ff-4ba4-bb03-24d4716b40d8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293654.2245264} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":828,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.535681,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:14Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"50c740c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","object_type":"device","rebac_allow":false,"scope_allow":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":"50c740c0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"50c740c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/76a780ce-b652-474f-b0dd-c47f15db92a2/signaling 200 10ms","method":"POST","requestID":"50c740c0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/76a780ce-b652-474f-b0dd-c47f15db92a2/signaling"} device-1 | {"device":"c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","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":"47bf4ff7-3c82-4d65-a4d9-3c27a0855f92","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"76a780ce-b652-474f-b0dd-c47f15db92a2","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":"47bf4ff7-3c82-4d65-a4d9-3c27a0855f92","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"76a780ce-b652-474f-b0dd-c47f15db92a2","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":"76a780ce-b652-474f-b0dd-c47f15db92a2","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":"76a780ce-b652-474f-b0dd-c47f15db92a2","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":"76a780ce-b652-474f-b0dd-c47f15db92a2","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/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"47bf4ff7-3c82-4d65-a4d9-3c27a0855f92","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e67af9b4bf846f4eaf9721d80869364d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e67af9b4bf846f4eaf9721d80869364d","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/76a780ce-b652-474f-b0dd-c47f15db92a2"},{"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/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92"}}},"level":"info","message":"received a callback","requestID":"e67af9b4bf846f4eaf9721d80869364d"} device-1 | {"device":"c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","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":"c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","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":"c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","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 8ms","method":"POST","requestID":"e67af9b4bf846f4eaf9721d80869364d","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"e67af9b4bf846f4eaf9721d80869364d"} device-1 | {"data":{"peerconnection":"47bf4ff7-3c82-4d65-a4d9-3c27a0855f92","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"76a780ce-b652-474f-b0dd-c47f15db92a2","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":"c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","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":"76a780ce-b652-474f-b0dd-c47f15db92a2","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":"c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","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":"47bf4ff7-3c82-4d65-a4d9-3c27a0855f92","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/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"47bf4ff7-3c82-4d65-a4d9-3c27a0855f92","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d0f77b6aebc72b1a7ef1689301464c22","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d0f77b6aebc72b1a7ef1689301464c22","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/76a780ce-b652-474f-b0dd-c47f15db92a2"},{"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/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92"}}},"level":"info","message":"received a callback","requestID":"d0f77b6aebc72b1a7ef1689301464c22"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"52036a40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F47bf4ff7-3c82-4d65-a4d9-3c27a0855f92","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee447d46-938f-4d11-94ed-70193fe8bec4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.2987697} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":829,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.915434,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52036a40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92","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":"52036a40-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"52036a40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92 200 12ms","method":"GET","requestID":"52036a40-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 47ms","method":"POST","requestID":"d0f77b6aebc72b1a7ef1689301464c22","responseTime":47,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.051","http_referrer":"","http_user_agent":"node-fetch","requestID":"d0f77b6aebc72b1a7ef1689301464c22"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"520984c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"78bfd3f8-5756-4889-a8d7-c7d030698712","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.3385801} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":830,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.747099,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"520984c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","object_type":"device","rebac_allow":false,"scope_allow":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":"520984c0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"520984c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/76a780ce-b652-474f-b0dd-c47f15db92a2/signaling 200 13ms","method":"POST","requestID":"520984c0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/76a780ce-b652-474f-b0dd-c47f15db92a2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"520bf5c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"42a87b8c-fd29-41c0-ba31-6598b7de0511","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.3562124} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":831,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.029708,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"520bf5c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","object_type":"device","rebac_allow":false,"scope_allow":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":"520bf5c0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"520bf5c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24/signaling 200 15ms","method":"POST","requestID":"520bf5c0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1Nn0.HwKwzOBL7-oeJrqE9Mc-IUBQ0VEECUt0E2BsyM2zvTM","level":"info","message":"auth send jwt","requestID":"910d73daea5ef4ccddce9717eb5852c0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"910d73daea5ef4ccddce9717eb5852c0","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5f1de403-a197-43bf-b947-f30681261510","requestID":"910d73daea5ef4ccddce9717eb5852c0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":832,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.249386,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"910d73daea5ef4ccddce9717eb5852c0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293656,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1Nn0.HwKwzOBL7-oeJrqE9Mc-IUBQ0VEECUt0E2BsyM2zvTM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"910d73daea5ef4ccddce9717eb5852c0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5f1de403-a197-43bf-b947-f30681261510","requestID":"910d73daea5ef4ccddce9717eb5852c0"} gateway-1 | {"time_local":"07/Oct/2024:09:34:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5f1de403-a197-43bf-b947-f30681261510 HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"910d73daea5ef4ccddce9717eb5852c0"} experiment-1 | {"level":"info","message":"GET /experiments/5f1de403-a197-43bf-b947-f30681261510 200 14ms","method":"GET","requestID":"910d73daea5ef4ccddce9717eb5852c0","responseTime":14,"status":200,"url":"/experiments/5f1de403-a197-43bf-b947-f30681261510"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1Nn0.HwKwzOBL7-oeJrqE9Mc-IUBQ0VEECUt0E2BsyM2zvTM","level":"info","message":"auth send jwt","requestID":"bbd862abe048b2e569d6e75c7e62ef3f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bbd862abe048b2e569d6e75c7e62ef3f","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5f1de403-a197-43bf-b947-f30681261510","requestID":"bbd862abe048b2e569d6e75c7e62ef3f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":833,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.202809,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"bbd862abe048b2e569d6e75c7e62ef3f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293656,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1Nn0.HwKwzOBL7-oeJrqE9Mc-IUBQ0VEECUt0E2BsyM2zvTM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bbd862abe048b2e569d6e75c7e62ef3f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Attempting to finish experiment","requestID":"bbd862abe048b2e569d6e75c7e62ef3f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"52176770-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":834,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.216844,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52176770-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293656,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1Nn0.HwKwzOBL7-oeJrqE9Mc-IUBQ0VEECUt0E2BsyM2zvTM"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"52176770-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"76a780ce-b652-474f-b0dd-c47f15db92a2","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":"76a780ce-b652-474f-b0dd-c47f15db92a2","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":"76a780ce-b652-474f-b0dd-c47f15db92a2","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":"c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","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":"c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","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":"c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","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/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"47bf4ff7-3c82-4d65-a4d9-3c27a0855f92","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F47bf4ff7-3c82-4d65-a4d9-3c27a0855f92': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F47bf4ff7-3c82-4d65-a4d9-3c27a0855f92","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"5233450d-19e2-436b-b639-fd6aec4a193b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.4486592} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"065e817f57a45dbb636addcf6136f256","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5672e1bf-f8a2-49dd-b33c-b035e7557180","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.449267} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"065e817f57a45dbb636addcf6136f256","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"52176770-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"55fdf3f1a8b201e6e316fa47a0d1126b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/76a780ce-b652-474f-b0dd-c47f15db92a2"},{"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/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92"}}},"level":"info","message":"received a callback","requestID":"065e817f57a45dbb636addcf6136f256"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"55fdf3f1a8b201e6e316fa47a0d1126b","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/76a780ce-b652-474f-b0dd-c47f15db92a2"},{"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/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92"}}},"level":"info","message":"received a callback","requestID":"55fdf3f1a8b201e6e316fa47a0d1126b"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"52176770-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92 204 35ms","method":"DELETE","requestID":"52176770-848f-11ef-9233-95baf63f17e0","responseTime":35,"status":204,"url":"/peerconnections/47bf4ff7-3c82-4d65-a4d9-3c27a0855f92"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5f1de403-a197-43bf-b947-f30681261510"},"level":"info","message":"Successfully finished experiment","requestID":"bbd862abe048b2e569d6e75c7e62ef3f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52206820-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F76a780ce-b652-474f-b0dd-c47f15db92a2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bbf52959-0408-492f-a61f-ecedf13e99cb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.4895008} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":835,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.736044,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52206820-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/76a780ce-b652-474f-b0dd-c47f15db92a2","object_type":"device","rebac_allow":false,"scope_allow":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":"52206820-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52206820-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/76a780ce-b652-474f-b0dd-c47f15db92a2/signaling 200 14ms","method":"POST","requestID":"52206820-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/76a780ce-b652-474f-b0dd-c47f15db92a2/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5f1de403-a197-43bf-b947-f30681261510': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5f1de403-a197-43bf-b947-f30681261510","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"8eede08c-e173-4268-a7d0-1beba54a229e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.4994454} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b0a53ac-8a00-4d2e-9131-8bbcaa547a28","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.4996674} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52232740-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"bbd862abe048b2e569d6e75c7e62ef3f","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a46bdf8d-88ce-4e5c-bb07-278b9cb15cde","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.5073404} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":836,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.029395,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52232740-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24","object_type":"device","rebac_allow":false,"scope_allow":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":"52232740-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52232740-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24/signaling 200 14ms","method":"POST","requestID":"52232740-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5f1de403-a197-43bf-b947-f30681261510","requestID":"bbd862abe048b2e569d6e75c7e62ef3f"} gateway-1 | {"time_local":"07/Oct/2024:09:34:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5f1de403-a197-43bf-b947-f30681261510 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.166","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bbd862abe048b2e569d6e75c7e62ef3f"} experiment-1 | {"level":"info","message":"DELETE /experiments/5f1de403-a197-43bf-b947-f30681261510 204 162ms","method":"DELETE","requestID":"bbd862abe048b2e569d6e75c7e62ef3f","responseTime":162,"status":204,"url":"/experiments/5f1de403-a197-43bf-b947-f30681261510"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.636","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"7fa6a7244223874f78b83229a579a322"} gateway-1 | {"time_local":"07/Oct/2024:09:34:16 +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.627","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"8f422ef5f98f133eebe3b706695ef542"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 120ms","method":"POST","requestID":"065e817f57a45dbb636addcf6136f256","responseTime":120,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"065e817f57a45dbb636addcf6136f256"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"55fdf3f1a8b201e6e316fa47a0d1126b","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"55fdf3f1a8b201e6e316fa47a0d1126b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1Nn0.HwKwzOBL7-oeJrqE9Mc-IUBQ0VEECUt0E2BsyM2zvTM","level":"info","message":"auth send jwt","requestID":"3f594137917041451292158123503c3c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3f594137917041451292158123503c3c","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/76a780ce-b652-474f-b0dd-c47f15db92a2' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"3f594137917041451292158123503c3c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":837,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.923406,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3f594137917041451292158123503c3c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293656,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1Nn0.HwKwzOBL7-oeJrqE9Mc-IUBQ0VEECUt0E2BsyM2zvTM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3f594137917041451292158123503c3c","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/c1fa4f87-a9dd-4fb0-9f81-0e8d4f49de24' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e5427083-1e69-405f-8cbf-525a3fa2a5ed","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.640733} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3f594137917041451292158123503c3c","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"16fe39f0-3eb8-429a-ae5e-f2e532a35408","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.645657} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"3f594137917041451292158123503c3c","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"f8fd5c17-dbd4-4ee4-9f38-c91b5473acad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.6579156} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1f7cffe-b6b4-4cb5-82a8-9676a6072dc3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.658113} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"3f594137917041451292158123503c3c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.657888919Z"}]},"request_id":"0752d5c6-d8a6-49b7-abf1-424b0a6c010a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.6626294} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3f594137917041451292158123503c3c","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3f594137917041451292158123503c3c"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.093","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3f594137917041451292158123503c3c"} device-1 | {"level":"info","message":"POST /devices? 201 86ms","method":"POST","requestID":"3f594137917041451292158123503c3c","responseTime":86,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1Nn0.HwKwzOBL7-oeJrqE9Mc-IUBQ0VEECUt0E2BsyM2zvTM","level":"info","message":"auth send jwt","requestID":"ba7ea5af03c95d0cd347e7138f344603"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ba7ea5af03c95d0cd347e7138f344603","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ba7ea5af03c95d0cd347e7138f344603"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":838,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.704995,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ba7ea5af03c95d0cd347e7138f344603","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293656,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1Nn0.HwKwzOBL7-oeJrqE9Mc-IUBQ0VEECUt0E2BsyM2zvTM"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ba7ea5af03c95d0cd347e7138f344603","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d98a2f2a-62f8-430a-9b34-144aef929112","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.6870768} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ba7ea5af03c95d0cd347e7138f344603","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c2c172a1-bb00-49f4-88d9-d9c7db98d6ae","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.6916842} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"ba7ea5af03c95d0cd347e7138f344603","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"80f0134f-caa5-47b1-9642-f0c807e49d65","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.7034917} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fa3ca682-8a5c-4cbf-b56c-0e19722219e4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.7036908} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"ba7ea5af03c95d0cd347e7138f344603","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.703462417Z"}]},"request_id":"ebde57f7-c86c-484a-bf97-87eaa05a1f9d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293656.7074678} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ba7ea5af03c95d0cd347e7138f344603","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ba7ea5af03c95d0cd347e7138f344603"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ba7ea5af03c95d0cd347e7138f344603"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"ba7ea5af03c95d0cd347e7138f344603","responseTime":40,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc","level":"info","message":"auth send jwt","requestID":"da6809ce26952f1ac0454aa22fce82f6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"da6809ce26952f1ac0454aa22fce82f6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"da6809ce26952f1ac0454aa22fce82f6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc","level":"info","message":"auth send jwt","requestID":"e487e07c1ab4e3c8a853738ad6f891fd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e487e07c1ab4e3c8a853738ad6f891fd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e487e07c1ab4e3c8a853738ad6f891fd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":839,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.633392,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"da6809ce26952f1ac0454aa22fce82f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"da6809ce26952f1ac0454aa22fce82f6","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":840,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.659701,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e487e07c1ab4e3c8a853738ad6f891fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e487e07c1ab4e3c8a853738ad6f891fd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.703462417Z"}]},"request_id":"0382442e-344c-465d-a560-e7d286ac67e5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.1869893} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"da6809ce26952f1ac0454aa22fce82f6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.657888919Z"}]},"request_id":"8ad58e1a-c7cf-4973-b40c-b70238fa1412","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.1874802} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e487e07c1ab4e3c8a853738ad6f891fd","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c46c86e3-4e66-40a5-8056-df5e437df00b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.191335} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"da6809ce26952f1ac0454aa22fce82f6","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2a47944e-a71e-42c3-be22-5894dc801ff8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.1930103} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e487e07c1ab4e3c8a853738ad6f891fd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.657888919Z"}]},"request_id":"c2b2aa10-63b6-45fe-9436-e8ba3849ec90","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.1951337} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e487e07c1ab4e3c8a853738ad6f891fd","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e487e07c1ab4e3c8a853738ad6f891fd"} gateway-1 | {"time_local":"07/Oct/2024:09:34:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"e487e07c1ab4e3c8a853738ad6f891fd"} device-1 | {"level":"info","message":"PATCH /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71 200 18ms","method":"PATCH","requestID":"e487e07c1ab4e3c8a853738ad6f891fd","responseTime":18,"status":200,"url":"/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc","level":"info","message":"auth send jwt","requestID":"67ef3381e5b1f82700d8542c56f0f7f6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"67ef3381e5b1f82700d8542c56f0f7f6","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"67ef3381e5b1f82700d8542c56f0f7f6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":841,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.666893,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"67ef3381e5b1f82700d8542c56f0f7f6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"67ef3381e5b1f82700d8542c56f0f7f6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.703462417Z"}]},"request_id":"7c5fcb6e-eef2-4212-b324-37b54fa9ee95","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.2050421} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"da6809ce26952f1ac0454aa22fce82f6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"da6809ce26952f1ac0454aa22fce82f6"} gateway-1 | {"time_local":"07/Oct/2024:09:34:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1908bfc6-49c8-4079-9044-75b7c87ba314 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"da6809ce26952f1ac0454aa22fce82f6"} device-1 | {"level":"info","message":"PATCH /devices/1908bfc6-49c8-4079-9044-75b7c87ba314 200 30ms","method":"PATCH","requestID":"da6809ce26952f1ac0454aa22fce82f6","responseTime":30,"status":200,"url":"/devices/1908bfc6-49c8-4079-9044-75b7c87ba314"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc","level":"info","message":"auth send jwt","requestID":"c9f26e86da6b3126b69f9a538b4a5e5b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c9f26e86da6b3126b69f9a538b4a5e5b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c9f26e86da6b3126b69f9a538b4a5e5b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":842,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.088512,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c9f26e86da6b3126b69f9a538b4a5e5b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"67ef3381e5b1f82700d8542c56f0f7f6"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c9f26e86da6b3126b69f9a538b4a5e5b","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:34:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71/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.9","requestID":"67ef3381e5b1f82700d8542c56f0f7f6"} device-1 | {"level":"info","message":"POST /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71/websocket 200 18ms","method":"POST","requestID":"67ef3381e5b1f82700d8542c56f0f7f6","responseTime":18,"status":200,"url":"/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c9f26e86da6b3126b69f9a538b4a5e5b"} device-1 | {"level":"info","message":"POST /devices/1908bfc6-49c8-4079-9044-75b7c87ba314/websocket 200 18ms","method":"POST","requestID":"c9f26e86da6b3126b69f9a538b4a5e5b","responseTime":18,"status":200,"url":"/devices/1908bfc6-49c8-4079-9044-75b7c87ba314/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1908bfc6-49c8-4079-9044-75b7c87ba314/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.9","requestID":"c9f26e86da6b3126b69f9a538b4a5e5b"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc","level":"info","message":"auth send jwt","requestID":"53e6d8b138c7df38ba302b76175ce233"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"53e6d8b138c7df38ba302b76175ce233","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"53e6d8b138c7df38ba302b76175ce233"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":843,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.902534,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"53e6d8b138c7df38ba302b76175ce233","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"53e6d8b138c7df38ba302b76175ce233","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.657888919Z"}]},"request_id":"3c1a5139-54e0-4287-93b1-6afcfd982031","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.2675169} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"53e6d8b138c7df38ba302b76175ce233","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"53e6d8b138c7df38ba302b76175ce233"} gateway-1 | {"time_local":"07/Oct/2024:09:34:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71? 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":"53e6d8b138c7df38ba302b76175ce233"} device-1 | {"level":"info","message":"GET /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71? 200 12ms","method":"GET","requestID":"53e6d8b138c7df38ba302b76175ce233","responseTime":13,"status":200,"url":"/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc","level":"info","message":"auth send jwt","requestID":"6a65675c7f113db3671c89454c08e245"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6a65675c7f113db3671c89454c08e245","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a65675c7f113db3671c89454c08e245"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":844,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.957816,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a65675c7f113db3671c89454c08e245","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6a65675c7f113db3671c89454c08e245","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.703462417Z"}]},"request_id":"f613d8c8-d5d9-43bb-8a39-0a040e760ab9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.2870138} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6a65675c7f113db3671c89454c08e245","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a65675c7f113db3671c89454c08e245"} device-1 | {"level":"info","message":"GET /devices/1908bfc6-49c8-4079-9044-75b7c87ba314? 200 11ms","method":"GET","requestID":"6a65675c7f113db3671c89454c08e245","responseTime":11,"status":200,"url":"/devices/1908bfc6-49c8-4079-9044-75b7c87ba314?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1908bfc6-49c8-4079-9044-75b7c87ba314? 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":"6a65675c7f113db3671c89454c08e245"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc","level":"info","message":"auth send jwt","requestID":"e7a8d23bf646f7917369095043936d75"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e7a8d23bf646f7917369095043936d75","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e7a8d23bf646f7917369095043936d75"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":845,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.674591,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e7a8d23bf646f7917369095043936d75","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e7a8d23bf646f7917369095043936d75","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Attempting to run experiment","requestID":"e7a8d23bf646f7917369095043936d75"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Attempting to book experiment","requestID":"e7a8d23bf646f7917369095043936d75"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Successfully booked experiment","requestID":"e7a8d23bf646f7917369095043936d75"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52a109d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52a130e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":846,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.658788,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52a109d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"52a109d0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":847,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.597125,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52a130e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"52a130e0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.657888919Z"}]},"request_id":"c21538db-b540-41d6-97d7-ff9f23f86828","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.33263} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"52a109d0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.703462417Z"}]},"request_id":"a36c89a4-b76f-4143-bab0-3b420b9e2b8e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.3333752} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"52a130e0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52a109d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71? 200 14ms","method":"GET","requestID":"52a109d0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52a130e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/1908bfc6-49c8-4079-9044-75b7c87ba314? 200 14ms","method":"GET","requestID":"52a130e0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/1908bfc6-49c8-4079-9044-75b7c87ba314?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Setting up experiment","requestID":"e7a8d23bf646f7917369095043936d75"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e7a8d23bf646f7917369095043936d75"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e7a8d23bf646f7917369095043936d75"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e7a8d23bf646f7917369095043936d75"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e7a8d23bf646f7917369095043936d75"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e7a8d23bf646f7917369095043936d75"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e7a8d23bf646f7917369095043936d75"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Successfully set up experiment","requestID":"e7a8d23bf646f7917369095043936d75"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52ab9120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52abdf40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52ac2d60-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Successfully running experiment","requestID":"e7a8d23bf646f7917369095043936d75"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":848,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.821238,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52ab9120-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"52ab9120-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":849,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.330014,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52abdf40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"52abdf40-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":850,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.20884,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"70395373-cb53-4d80-80b5-e5e61da5e09a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.406893} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52ac2d60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","object_type":"device","rebac_allow":false,"scope_allow":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":"52ac2d60-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.703462417Z"}]},"request_id":"992bc2a5-fba1-42b9-9541-286ee1757353","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.410407} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"52abdf40-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.657888919Z"}]},"request_id":"f37727fa-f84a-4ce0-a03a-45d8fe52bcc8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.4129949} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"52ab9120-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52ac2d60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71/signaling 200 16ms","method":"POST","requestID":"52ac2d60-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52abdf40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/1908bfc6-49c8-4079-9044-75b7c87ba314? 200 21ms","method":"GET","requestID":"52abdf40-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/1908bfc6-49c8-4079-9044-75b7c87ba314?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52af3aa0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52ab9120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71? 200 25ms","method":"GET","requestID":"52ab9120-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52affdf0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa05d89aa-d130-4dd0-89c3-74488fd17aaf#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa05d89aa-d130-4dd0-89c3-74488fd17aaf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"8896f624-d84e-4a50-93b2-90bf561ba19f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.4236407} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2f2af4fe-b759-462b-ab71-e6bee40d5501","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.4239626} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"80c08b25-5951-4dbf-aeee-2b9e25bda914","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.423947} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":851,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.433708,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"e7a8d23bf646f7917369095043936d75","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52af3aa0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","object_type":"device","rebac_allow":false,"scope_allow":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":"52af3aa0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"96ee45d7-bad7-453d-b1a8-95a5202ab9fe","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.4280288} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":852,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.687815,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52affdf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"52affdf0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52af3aa0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1908bfc6-49c8-4079-9044-75b7c87ba314/signaling 200 13ms","method":"POST","requestID":"52af3aa0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/1908bfc6-49c8-4079-9044-75b7c87ba314/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52affdf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71/signaling 200 10ms","method":"POST","requestID":"52affdf0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e7a8d23bf646f7917369095043936d75"} experiment-1 | {"level":"info","message":"POST /experiments? 201 136ms","method":"POST","requestID":"e7a8d23bf646f7917369095043936d75","responseTime":136,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.142","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e7a8d23bf646f7917369095043936d75"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52b1f9c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc","level":"info","message":"auth send jwt","requestID":"e6dd4efed581e4572c723a06cd373f3f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e6dd4efed581e4572c723a06cd373f3f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e6dd4efed581e4572c723a06cd373f3f"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"970d585d-2a39-4902-a70d-a14554cbc14b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.4406738} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":853,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.731812,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52b1f9c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","object_type":"device","rebac_allow":false,"scope_allow":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":"52b1f9c0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":854,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.557574,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e6dd4efed581e4572c723a06cd373f3f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e6dd4efed581e4572c723a06cd373f3f","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52b1f9c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1908bfc6-49c8-4079-9044-75b7c87ba314/signaling 200 10ms","method":"POST","requestID":"52b1f9c0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/1908bfc6-49c8-4079-9044-75b7c87ba314/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.657888919Z"}]},"request_id":"6c408468-8319-49f6-b04c-4f97f6ca6788","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.4472024} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e7a8d23bf646f7917369095043936d75"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e6dd4efed581e4572c723a06cd373f3f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52b3f590-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"52b41ca0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e6dd4efed581e4572c723a06cd373f3f"} device-1 | {"level":"info","message":"GET /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71? 200 12ms","method":"GET","requestID":"e6dd4efed581e4572c723a06cd373f3f","responseTime":12,"status":200,"url":"/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71? 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":"e6dd4efed581e4572c723a06cd373f3f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":855,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.700517,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Received request.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:56902","level":"info","msg":"Sent response.","req_id":856,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.537078,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52b3f590-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"52b3f590-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc","level":"info","message":"auth send jwt","requestID":"7b33ac446e931ebd60aec2ff1185d476"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52b41ca0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7b33ac446e931ebd60aec2ff1185d476","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"52b41ca0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7b33ac446e931ebd60aec2ff1185d476"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.657888919Z"}]},"request_id":"1ac0aeeb-484c-42dd-8240-bf32b1e008c8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.459375} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"52b3f590-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.703462417Z"}]},"request_id":"742ec849-363e-45b1-b213-496494beb206","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.4604323} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"52b41ca0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":857,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.939655,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7b33ac446e931ebd60aec2ff1185d476","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52b3f590-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"7b33ac446e931ebd60aec2ff1185d476","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71? 200 15ms","method":"GET","requestID":"52b3f590-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"52b41ca0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/1908bfc6-49c8-4079-9044-75b7c87ba314? 200 16ms","method":"GET","requestID":"52b41ca0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/1908bfc6-49c8-4079-9044-75b7c87ba314?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:16.703462417Z"}]},"request_id":"884118b3-c148-4c73-90cd-3caa8032d548","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.4670277} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Building connection plan","requestID":"e7a8d23bf646f7917369095043936d75"} 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":"9d0a7f04-66a7-43a2-ae64-6a50c15e528f"},{"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":"5e51515f-d509-4c9a-848e-2beb72e2842c"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"abbbf6d2-206a-4563-a326-e40518ba70d1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e7a8d23bf646f7917369095043936d75"} 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/1908bfc6-49c8-4079-9044-75b7c87ba314"},{"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/4ed172e0-0727-4bc5-99b8-dd2b39528e71"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e7a8d23bf646f7917369095043936d75"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7b33ac446e931ebd60aec2ff1185d476","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"52b702d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7b33ac446e931ebd60aec2ff1185d476"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:17 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1908bfc6-49c8-4079-9044-75b7c87ba314? 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":"7b33ac446e931ebd60aec2ff1185d476"} device-1 | {"level":"info","message":"GET /devices/1908bfc6-49c8-4079-9044-75b7c87ba314? 200 14ms","method":"GET","requestID":"7b33ac446e931ebd60aec2ff1185d476","responseTime":14,"status":200,"url":"/devices/1908bfc6-49c8-4079-9044-75b7c87ba314?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":858,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.985569,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52b702d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293657,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1N30.-MQWWpgIkd_VvLE-KGrPXvTIjLJR640fmQrtkX8ivGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"52b702d0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"7c31888e-4e7e-45d4-bd99-ba430aa336ba","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.4798172} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"612e46e6-c33f-4252-aebe-868176747f5c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.4800024} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"52b702d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"52b702d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"52b702d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/46755bca-7d05-403f-9625-3375a557eace'","requestID":"52b702d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/46755bca-7d05-403f-9625-3375a557eace'","requestID":"52b702d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"52b702d0-848f-11ef-9233-95baf63f17e0"} 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":"52b702d0-848f-11ef-9233-95baf63f17e0","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":"52b702d0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e7a8d23bf646f7917369095043936d75"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52becb00-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":859,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"691c87e9-cd09-4acd-8e72-02a7b85d2a4e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.5261006} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":859,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.937523,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52becb00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"52becb00-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52becb00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71/signaling 200 10ms","method":"POST","requestID":"52becb00-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"52c09fc0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":860,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"63b1a31f-61c1-466f-82d4-d391cb6c716f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293657.5363696} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":860,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.761422,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:17Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52c09fc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","object_type":"device","rebac_allow":false,"scope_allow":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":"52c09fc0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"52c09fc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1908bfc6-49c8-4079-9044-75b7c87ba314/signaling 200 8ms","method":"POST","requestID":"52c09fc0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/1908bfc6-49c8-4079-9044-75b7c87ba314/signaling"} device-1 | {"device":"4ed172e0-0727-4bc5-99b8-dd2b39528e71","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":"46755bca-7d05-403f-9625-3375a557eace","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1908bfc6-49c8-4079-9044-75b7c87ba314","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":"46755bca-7d05-403f-9625-3375a557eace","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1908bfc6-49c8-4079-9044-75b7c87ba314","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":"1908bfc6-49c8-4079-9044-75b7c87ba314","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":"1908bfc6-49c8-4079-9044-75b7c87ba314","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":"1908bfc6-49c8-4079-9044-75b7c87ba314","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/46755bca-7d05-403f-9625-3375a557eace' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"46755bca-7d05-403f-9625-3375a557eace","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6b60d2df95e1763aa0d4b8ddba6689cd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6b60d2df95e1763aa0d4b8ddba6689cd","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314"},{"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/4ed172e0-0727-4bc5-99b8-dd2b39528e71"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/46755bca-7d05-403f-9625-3375a557eace"}}},"level":"info","message":"received a callback","requestID":"6b60d2df95e1763aa0d4b8ddba6689cd"} device-1 | {"device":"4ed172e0-0727-4bc5-99b8-dd2b39528e71","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":"4ed172e0-0727-4bc5-99b8-dd2b39528e71","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":"4ed172e0-0727-4bc5-99b8-dd2b39528e71","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":"6b60d2df95e1763aa0d4b8ddba6689cd","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"6b60d2df95e1763aa0d4b8ddba6689cd"} device-1 | {"data":{"peerconnection":"46755bca-7d05-403f-9625-3375a557eace","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"1908bfc6-49c8-4079-9044-75b7c87ba314","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":"4ed172e0-0727-4bc5-99b8-dd2b39528e71","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":"1908bfc6-49c8-4079-9044-75b7c87ba314","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":"4ed172e0-0727-4bc5-99b8-dd2b39528e71","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":"46755bca-7d05-403f-9625-3375a557eace","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/46755bca-7d05-403f-9625-3375a557eace' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"46755bca-7d05-403f-9625-3375a557eace","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a673c4c41db24b9e42c5b5275b67756b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a673c4c41db24b9e42c5b5275b67756b","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/1908bfc6-49c8-4079-9044-75b7c87ba314"},{"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/4ed172e0-0727-4bc5-99b8-dd2b39528e71"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/46755bca-7d05-403f-9625-3375a557eace"}}},"level":"info","message":"received a callback","requestID":"a673c4c41db24b9e42c5b5275b67756b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"53fd3e70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":861,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F46755bca-7d05-403f-9625-3375a557eace","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d1788f78-d39b-44bd-a7c0-a9be2cdd29b0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.613928} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":861,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.901897,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/46755bca-7d05-403f-9625-3375a557eace","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"53fd3e70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/46755bca-7d05-403f-9625-3375a557eace","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":"53fd3e70-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"53fd3e70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/46755bca-7d05-403f-9625-3375a557eace 200 13ms","method":"GET","requestID":"53fd3e70-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/peerconnections/46755bca-7d05-403f-9625-3375a557eace"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 48ms","method":"POST","requestID":"a673c4c41db24b9e42c5b5275b67756b","responseTime":48,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.053","http_referrer":"","http_user_agent":"node-fetch","requestID":"a673c4c41db24b9e42c5b5275b67756b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5403a710-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":862,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"47603408-3d9b-44b2-a123-f3fc0fbe3773","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.6553667} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":862,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.704579,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5403a710-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","object_type":"device","rebac_allow":false,"scope_allow":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":"5403a710-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5403a710-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1908bfc6-49c8-4079-9044-75b7c87ba314/signaling 200 13ms","method":"POST","requestID":"5403a710-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/1908bfc6-49c8-4079-9044-75b7c87ba314/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"54061810-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":863,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56b9fc6f-ca8e-4a33-9e61-52bbad4fa19c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.6729004} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":863,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.374255,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"54061810-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","object_type":"device","rebac_allow":false,"scope_allow":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":"54061810-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"54061810-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71/signaling 200 15ms","method":"POST","requestID":"54061810-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1OX0._yUFOW8bSSfDQx8MKqtTK0RScwRgn5UTNsj4x8sVMiI","level":"info","message":"auth send jwt","requestID":"a59ab49d0d4f09ac7363d8154169515c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a59ab49d0d4f09ac7363d8154169515c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf","requestID":"a59ab49d0d4f09ac7363d8154169515c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":864,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":864,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.225395,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a59ab49d0d4f09ac7363d8154169515c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293659,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1OX0._yUFOW8bSSfDQx8MKqtTK0RScwRgn5UTNsj4x8sVMiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a59ab49d0d4f09ac7363d8154169515c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf","requestID":"a59ab49d0d4f09ac7363d8154169515c"} gateway-1 | {"time_local":"07/Oct/2024:09:34:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.021","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a59ab49d0d4f09ac7363d8154169515c"} experiment-1 | {"level":"info","message":"GET /experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf 200 15ms","method":"GET","requestID":"a59ab49d0d4f09ac7363d8154169515c","responseTime":15,"status":200,"url":"/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1OX0._yUFOW8bSSfDQx8MKqtTK0RScwRgn5UTNsj4x8sVMiI","level":"info","message":"auth send jwt","requestID":"e7fb55a6086756f9afb5a040502dea98"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e7fb55a6086756f9afb5a040502dea98","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf","requestID":"e7fb55a6086756f9afb5a040502dea98"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":865,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":865,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.488578,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e7fb55a6086756f9afb5a040502dea98","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293659,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1OX0._yUFOW8bSSfDQx8MKqtTK0RScwRgn5UTNsj4x8sVMiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e7fb55a6086756f9afb5a040502dea98","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Attempting to finish experiment","requestID":"e7fb55a6086756f9afb5a040502dea98"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"54111490-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":866,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":866,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.217616,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/46755bca-7d05-403f-9625-3375a557eace","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"54111490-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/46755bca-7d05-403f-9625-3375a557eace","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293659,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1OX0._yUFOW8bSSfDQx8MKqtTK0RScwRgn5UTNsj4x8sVMiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"54111490-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"device":"4ed172e0-0727-4bc5-99b8-dd2b39528e71","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":"4ed172e0-0727-4bc5-99b8-dd2b39528e71","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":"4ed172e0-0727-4bc5-99b8-dd2b39528e71","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":"1908bfc6-49c8-4079-9044-75b7c87ba314","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":"1908bfc6-49c8-4079-9044-75b7c87ba314","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":"1908bfc6-49c8-4079-9044-75b7c87ba314","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/46755bca-7d05-403f-9625-3375a557eace' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/46755bca-7d05-403f-9625-3375a557eace' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"46755bca-7d05-403f-9625-3375a557eace","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F46755bca-7d05-403f-9625-3375a557eace': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F46755bca-7d05-403f-9625-3375a557eace","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"9506d6fe-764a-4307-b5d5-83b1c1170ffd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.7624943} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1171580d-a30d-44ea-816c-fc15ab7307af","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.7631032} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"97cb0c48109b4ef885ae9c30cefdf040","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"97cb0c48109b4ef885ae9c30cefdf040","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"54111490-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0da57888acd62ffcec8777cdf6a1cabe","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/1908bfc6-49c8-4079-9044-75b7c87ba314"},{"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/4ed172e0-0727-4bc5-99b8-dd2b39528e71"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/46755bca-7d05-403f-9625-3375a557eace"}}},"level":"info","message":"received a callback","requestID":"97cb0c48109b4ef885ae9c30cefdf040"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0da57888acd62ffcec8777cdf6a1cabe","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":"connected","url":"http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314"},{"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/4ed172e0-0727-4bc5-99b8-dd2b39528e71"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/46755bca-7d05-403f-9625-3375a557eace"}}},"level":"info","message":"received a callback","requestID":"0da57888acd62ffcec8777cdf6a1cabe"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"54111490-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/46755bca-7d05-403f-9625-3375a557eace 204 50ms","method":"DELETE","requestID":"54111490-848f-11ef-9233-95baf63f17e0","responseTime":50,"status":204,"url":"/peerconnections/46755bca-7d05-403f-9625-3375a557eace"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"},"level":"info","message":"Successfully finished experiment","requestID":"e7fb55a6086756f9afb5a040502dea98"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"541c5f30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":867,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1908bfc6-49c8-4079-9044-75b7c87ba314","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"343fdef3-49c2-42ea-8024-de405b67b3df","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.8188565} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":867,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.122527,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"541c5f30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314","object_type":"device","rebac_allow":false,"scope_allow":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":"541c5f30-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"541c5f30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1908bfc6-49c8-4079-9044-75b7c87ba314/signaling 200 15ms","method":"POST","requestID":"541c5f30-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/1908bfc6-49c8-4079-9044-75b7c87ba314/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa05d89aa-d130-4dd0-89c3-74488fd17aaf': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fa05d89aa-d130-4dd0-89c3-74488fd17aaf","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"3e77b7ae-9664-41ea-9021-b848eb30af12","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.8273208} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0e5b7fc8-f0ef-4383-8264-c1e4f584351b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.8282902} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"541f1e50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"e7fb55a6086756f9afb5a040502dea98","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":868,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4ed172e0-0727-4bc5-99b8-dd2b39528e71","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2b4ac10-e3db-4cd3-8653-657f80bc2b2a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.8365896} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":868,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.949107,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"541f1e50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71","object_type":"device","rebac_allow":false,"scope_allow":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":"541f1e50-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"541f1e50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71/signaling 200 14ms","method":"POST","requestID":"541f1e50-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/4ed172e0-0727-4bc5-99b8-dd2b39528e71/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf","requestID":"e7fb55a6086756f9afb5a040502dea98"} gateway-1 | {"time_local":"07/Oct/2024:09:34:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.187","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e7fb55a6086756f9afb5a040502dea98"} gateway-1 | {"time_local":"07/Oct/2024:09:34:19 +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.9","requestID":"17c85274fca3d44f6d24f530366bf943"} experiment-1 | {"level":"info","message":"DELETE /experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf 204 183ms","method":"DELETE","requestID":"e7fb55a6086756f9afb5a040502dea98","responseTime":183,"status":204,"url":"/experiments/a05d89aa-d130-4dd0-89c3-74488fd17aaf"} gateway-1 | {"time_local":"07/Oct/2024:09:34:19 +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.671","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"9fda0de08cc5fc3cab12790c0f36b24c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"97cb0c48109b4ef885ae9c30cefdf040","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.145","http_referrer":"","http_user_agent":"node-fetch","requestID":"97cb0c48109b4ef885ae9c30cefdf040"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 141ms","method":"POST","requestID":"0da57888acd62ffcec8777cdf6a1cabe","responseTime":141,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.147","http_referrer":"","http_user_agent":"node-fetch","requestID":"0da57888acd62ffcec8777cdf6a1cabe"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1908bfc6-49c8-4079-9044-75b7c87ba314' closed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1OX0._yUFOW8bSSfDQx8MKqtTK0RScwRgn5UTNsj4x8sVMiI","level":"info","message":"auth send jwt","requestID":"7d1ebd3a421fbb151c636d6311756c2f"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"7d1ebd3a421fbb151c636d6311756c2f","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7d1ebd3a421fbb151c636d6311756c2f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":869,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":869,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.987583,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d1ebd3a421fbb151c636d6311756c2f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293659,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1OX0._yUFOW8bSSfDQx8MKqtTK0RScwRgn5UTNsj4x8sVMiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7d1ebd3a421fbb151c636d6311756c2f","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/4ed172e0-0727-4bc5-99b8-dd2b39528e71' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fbf913da-94fc-4fdf-aeea-5f088b820e3c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.9349232} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7d1ebd3a421fbb151c636d6311756c2f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c357feae-5697-4a7e-bf70-805ea2903bcb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.9412065} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7d1ebd3a421fbb151c636d6311756c2f","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"278f5de4-6ce7-4a98-9221-31db94413a17","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.9520311} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d89494f-727f-437c-976b-3fc4243fc1c1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.952293} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"7d1ebd3a421fbb151c636d6311756c2f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:19.951996533Z"}]},"request_id":"613b5589-8fda-49f2-a713-c80854733fca","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.9573157} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7d1ebd3a421fbb151c636d6311756c2f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7d1ebd3a421fbb151c636d6311756c2f"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.053","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7d1ebd3a421fbb151c636d6311756c2f"} device-1 | {"level":"info","message":"POST /devices? 201 46ms","method":"POST","requestID":"7d1ebd3a421fbb151c636d6311756c2f","responseTime":46,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1OX0._yUFOW8bSSfDQx8MKqtTK0RScwRgn5UTNsj4x8sVMiI","level":"info","message":"auth send jwt","requestID":"d293bbf9a3894018c77804bbd52c5e27"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d293bbf9a3894018c77804bbd52c5e27","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d293bbf9a3894018c77804bbd52c5e27"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":870,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":870,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.769762,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d293bbf9a3894018c77804bbd52c5e27","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293659,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY1OX0._yUFOW8bSSfDQx8MKqtTK0RScwRgn5UTNsj4x8sVMiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d293bbf9a3894018c77804bbd52c5e27","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"921c64a1-e433-4506-a5b2-be00e53d3b42","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.9886272} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d293bbf9a3894018c77804bbd52c5e27","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"07ec101e-1baf-4c40-ad37-cf8ddb5129b5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293659.9935095} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d293bbf9a3894018c77804bbd52c5e27","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"ebd40a1a-2aa8-49c8-99f6-96a2d8406fe5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293660.0055888} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"215099f8-7cf3-4c8e-8f7f-b8f455215b20","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293660.00593} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"d293bbf9a3894018c77804bbd52c5e27","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:20.005558739Z"}]},"request_id":"13e03657-1399-42bc-898f-bec5195bb50e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293660.0102746} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d293bbf9a3894018c77804bbd52c5e27","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d293bbf9a3894018c77804bbd52c5e27"} gateway-1 | {"time_local":"07/Oct/2024:09:34:20 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d293bbf9a3894018c77804bbd52c5e27"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"d293bbf9a3894018c77804bbd52c5e27","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"00d5eb31b518020f7a6128b406034f1e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"00d5eb31b518020f7a6128b406034f1e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/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":"00d5eb31b518020f7a6128b406034f1e"} device-1 | {"level":"info","message":"OPTIONS /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/websocket 200 1ms","method":"OPTIONS","requestID":"00d5eb31b518020f7a6128b406034f1e","responseTime":1,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs","level":"info","message":"auth send jwt","requestID":"40ba4af9d5809d3846b2b7b09f1ec501"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"40ba4af9d5809d3846b2b7b09f1ec501","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"40ba4af9d5809d3846b2b7b09f1ec501"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":871,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":871,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.9559,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40ba4af9d5809d3846b2b7b09f1ec501","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"40ba4af9d5809d3846b2b7b09f1ec501","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cbc9172955ff827d1fc3cd87f14fd4a1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cbc9172955ff827d1fc3cd87f14fd4a1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/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":"cbc9172955ff827d1fc3cd87f14fd4a1"} device-1 | {"level":"info","message":"OPTIONS /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/websocket 200 0ms","method":"OPTIONS","requestID":"cbc9172955ff827d1fc3cd87f14fd4a1","responseTime":0,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs","level":"info","message":"auth send jwt","requestID":"d1d1d708fa818da86f7c5a69cd7dc33d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d1d1d708fa818da86f7c5a69cd7dc33d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d1d1d708fa818da86f7c5a69cd7dc33d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"40ba4af9d5809d3846b2b7b09f1ec501"} device-1 | {"level":"info","message":"POST /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/websocket 200 18ms","method":"POST","requestID":"40ba4af9d5809d3846b2b7b09f1ec501","responseTime":18,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"40ba4af9d5809d3846b2b7b09f1ec501"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":872,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":872,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.712913,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d1d1d708fa818da86f7c5a69cd7dc33d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d1d1d708fa818da86f7c5a69cd7dc33d","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d1d1d708fa818da86f7c5a69cd7dc33d"} device-1 | {"level":"info","message":"POST /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/websocket 200 15ms","method":"POST","requestID":"d1d1d708fa818da86f7c5a69cd7dc33d","responseTime":15,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.021","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d1d1d708fa818da86f7c5a69cd7dc33d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c749e0b5027fd35949167c28bdd4cb51","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c749e0b5027fd35949167c28bdd4cb51","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b? 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":"c749e0b5027fd35949167c28bdd4cb51"} device-1 | {"level":"info","message":"OPTIONS /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b? 200 1ms","method":"OPTIONS","requestID":"c749e0b5027fd35949167c28bdd4cb51","responseTime":1,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"76be9244bd90adec53612d0e79e25486","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"76be9244bd90adec53612d0e79e25486","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs","level":"info","message":"auth send jwt","requestID":"88347182a812aa6f1414c98a675560b2"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"88347182a812aa6f1414c98a675560b2","responseTime":5,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4? 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":"76be9244bd90adec53612d0e79e25486"} device-1 | {"level":"info","message":"OPTIONS /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4? 200 0ms","method":"OPTIONS","requestID":"76be9244bd90adec53612d0e79e25486","responseTime":0,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4?"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"88347182a812aa6f1414c98a675560b2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":873,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":873,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.953567,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs","level":"info","message":"auth send jwt","requestID":"700d2bbd71d077a532c846e5619f231c"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"88347182a812aa6f1414c98a675560b2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"700d2bbd71d077a532c846e5619f231c","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"88347182a812aa6f1414c98a675560b2","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"700d2bbd71d077a532c846e5619f231c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":874,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":874,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.872804,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"700d2bbd71d077a532c846e5619f231c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"700d2bbd71d077a532c846e5619f231c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:19.951996533Z"}]},"request_id":"23ace0b8-b58a-4b7a-8b20-f1bc1608d274","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.0838833} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"88347182a812aa6f1414c98a675560b2","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7ee11074-b1e6-422a-8efa-a7ba1525184f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.0892844} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"88347182a812aa6f1414c98a675560b2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:20.005558739Z"}]},"request_id":"fb41dab3-8a46-4aa6-a809-3e3391844e0a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.0902996} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"700d2bbd71d077a532c846e5619f231c","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a260a058-5f60-4eb6-9228-fdffc518a06b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.0950623} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"700d2bbd71d077a532c846e5619f231c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:19.951996533Z"}]},"request_id":"2416264b-e436-49a9-b211-850ba0bda699","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.0983822} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"88347182a812aa6f1414c98a675560b2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"88347182a812aa6f1414c98a675560b2"} device-1 | {"level":"info","message":"PATCH /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b? 200 27ms","method":"PATCH","requestID":"88347182a812aa6f1414c98a675560b2","responseTime":27,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b? 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":"88347182a812aa6f1414c98a675560b2"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:20.005558739Z"}]},"request_id":"fa8385b7-1323-4f85-bd00-e1b7b14e4a14","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.1147513} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"700d2bbd71d077a532c846e5619f231c","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"700d2bbd71d077a532c846e5619f231c"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4? 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":"700d2bbd71d077a532c846e5619f231c"} device-1 | {"level":"info","message":"PATCH /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4? 200 36ms","method":"PATCH","requestID":"700d2bbd71d077a532c846e5619f231c","responseTime":36,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs","level":"info","message":"auth send jwt","requestID":"02f809d3db199314adb2c0cafc14902f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"02f809d3db199314adb2c0cafc14902f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"02f809d3db199314adb2c0cafc14902f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":875,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":875,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.118467,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"02f809d3db199314adb2c0cafc14902f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"02f809d3db199314adb2c0cafc14902f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:19.951996533Z"}]},"request_id":"45a0ed02-7758-457a-9fcd-7c350ca17dc5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.1323988} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"02f809d3db199314adb2c0cafc14902f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"02f809d3db199314adb2c0cafc14902f"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"02f809d3db199314adb2c0cafc14902f"} device-1 | {"level":"info","message":"GET /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b? 200 11ms","method":"GET","requestID":"02f809d3db199314adb2c0cafc14902f","responseTime":11,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs","level":"info","message":"auth send jwt","requestID":"c040cf5a73e923eb22b0b1a7e653555e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c040cf5a73e923eb22b0b1a7e653555e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c040cf5a73e923eb22b0b1a7e653555e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":876,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":876,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.891934,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c040cf5a73e923eb22b0b1a7e653555e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c040cf5a73e923eb22b0b1a7e653555e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:20.005558739Z"}]},"request_id":"8bf75460-7316-4942-881e-8b6294283672","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.1519485} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c040cf5a73e923eb22b0b1a7e653555e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c040cf5a73e923eb22b0b1a7e653555e"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4? 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":"c040cf5a73e923eb22b0b1a7e653555e"} device-1 | {"level":"info","message":"GET /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4? 200 12ms","method":"GET","requestID":"c040cf5a73e923eb22b0b1a7e653555e","responseTime":12,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs","level":"info","message":"auth send jwt","requestID":"2fce2ffb1748d50a7791c754c579818d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2fce2ffb1748d50a7791c754c579818d","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2fce2ffb1748d50a7791c754c579818d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":877,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":877,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.064247,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2fce2ffb1748d50a7791c754c579818d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2fce2ffb1748d50a7791c754c579818d","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Attempting to run experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Attempting to book experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Successfully booked experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"55895cb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"558983c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":878,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":878,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.142658,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"55895cb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"55895cb0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":879,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":879,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.725204,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"558983c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"558983c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:19.951996533Z"}]},"request_id":"b0d5a34b-d211-4457-ab9e-f94bfe381aa3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.2121162} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"55895cb0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:20.005558739Z"}]},"request_id":"bfc049d4-2cab-4744-bba8-0e0025609712","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.2149096} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"55895cb0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"558983c0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b? 200 12ms","method":"GET","requestID":"55895cb0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"558983c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4? 200 14ms","method":"GET","requestID":"558983c0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Setting up experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Successfully set up experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5592f9a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"559320b0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Successfully running experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"559347c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":880,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":880,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.727233,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":881,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5592f9a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5592f9a0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":881,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.566703,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"559320b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"559320b0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":882,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a5a94454-0caf-458a-b4d6-125e950a8bf2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.27334} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":882,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.384342,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"559347c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"559347c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:19.951996533Z"}]},"request_id":"8312e2a8-71a5-4d8f-877b-d852825f6511","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.2752042} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5592f9a0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:20.005558739Z"}]},"request_id":"1eeafd57-32c6-4be1-890c-9c847bf6aabf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.2771447} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"559320b0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"559347c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/signaling 200 12ms","method":"POST","requestID":"559347c0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5592f9a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b? 200 17ms","method":"GET","requestID":"5592f9a0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"559591b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":883,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2d851d7f-c6c5-430c-8cb1-c0f84ecc635b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.2887175} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2ef0730c-ed4b-47a4-b58c-64c8f4ce3840#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2ef0730c-ed4b-47a4-b58c-64c8f4ce3840","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"9463a6c6-29a8-4608-b54a-eda314cc2bd2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.2890973} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"559320b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4? 200 22ms","method":"GET","requestID":"559320b0-848f-11ef-9233-95baf63f17e0","responseTime":22,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"35a0f2d4-094d-4729-b775-f09dd72ac719","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.2894456} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":883,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.897147,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"559591b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","object_type":"device","rebac_allow":false,"scope_allow":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":"559591b0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5596ca30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"2fce2ffb1748d50a7791c754c579818d","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":884,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"559591b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"81abbd84-7051-4211-90d5-f9707a18209d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.2956412} device-1 | {"level":"info","message":"POST /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/signaling 200 13ms","method":"POST","requestID":"559591b0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":884,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.589576,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5596ca30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5596ca30-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2fce2ffb1748d50a7791c754c579818d"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2fce2ffb1748d50a7791c754c579818d"} experiment-1 | {"level":"info","message":"POST /experiments? 201 138ms","method":"POST","requestID":"2fce2ffb1748d50a7791c754c579818d","responseTime":138,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5596ca30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/signaling 200 8ms","method":"POST","requestID":"5596ca30-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"559877e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":885,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs","level":"info","message":"auth send jwt","requestID":"72e490fefc0dd96484be7ec873b9dba9"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"72e490fefc0dd96484be7ec873b9dba9","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"72e490fefc0dd96484be7ec873b9dba9"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"71a55d21-55ef-4049-93a2-7dd6751e566c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.3063133} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":885,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.477835,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"559877e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"559877e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":886,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":886,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.631999,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"559877e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/signaling 200 8ms","method":"POST","requestID":"559877e0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"72e490fefc0dd96484be7ec873b9dba9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"72e490fefc0dd96484be7ec873b9dba9","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5599fe80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"559a2590-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:19.951996533Z"}]},"request_id":"8cbac8f0-f89b-4854-a00a-9890242f88f5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.3140104} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"72e490fefc0dd96484be7ec873b9dba9","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":887,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":887,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.672548,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":888,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5599fe80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5599fe80-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":888,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.761917,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"559a2590-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"559a2590-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"72e490fefc0dd96484be7ec873b9dba9"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b? 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":"72e490fefc0dd96484be7ec873b9dba9"} device-1 | {"level":"info","message":"GET /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b? 200 15ms","method":"GET","requestID":"72e490fefc0dd96484be7ec873b9dba9","responseTime":15,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:19.951996533Z"}]},"request_id":"32984f54-fa84-4c2e-aa53-6cf3d4f83db3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.3204992} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5599fe80-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:20.005558739Z"}]},"request_id":"440f534c-eb14-425a-9c73-17cbb8591780","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.3214839} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"559a2590-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs","level":"info","message":"auth send jwt","requestID":"27112d89b5b3689d1faff9134c0ffd3f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"27112d89b5b3689d1faff9134c0ffd3f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"27112d89b5b3689d1faff9134c0ffd3f"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5599fe80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b? 200 16ms","method":"GET","requestID":"5599fe80-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"559a2590-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4? 200 16ms","method":"GET","requestID":"559a2590-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":889,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Building connection plan","requestID":"2fce2ffb1748d50a7791c754c579818d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":889,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.663896,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} 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":"54369585-db15-4934-ae3c-085e391710ac"},{"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":"4ac85376-c077-466c-a92f-39f8b9d0a26c"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"951d1a55-d626-44a5-8911-06be9dd44e3e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2fce2ffb1748d50a7791c754c579818d"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"27112d89b5b3689d1faff9134c0ffd3f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"27112d89b5b3689d1faff9134c0ffd3f","responseTime":3,"status":200,"url":"/authorize"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"559d0bc0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"559d0bc0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"559d0bc0-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:20.005558739Z"}]},"request_id":"d966a2c1-7597-4ecb-bc3f-bd99aae549d9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.333998} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/1dac915c-0524-4348-af8c-c4dca374655c?id=dfc9d4fd-5d63-467f-9f71-e96e71475040","ws://localhost/rooms/1dac915c-0524-4348-af8c-c4dca374655c?id=8d188a02-2bb4-4b64-89df-7dd66746b446"]},"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/b475723b-5dd3-4f7a-88cc-07aece1dcd7b"},{"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/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"2fce2ffb1748d50a7791c754c579818d"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"27112d89b5b3689d1faff9134c0ffd3f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"559da800-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"27112d89b5b3689d1faff9134c0ffd3f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":890,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4? 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":"27112d89b5b3689d1faff9134c0ffd3f"} device-1 | {"level":"info","message":"GET /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4? 200 11ms","method":"GET","requestID":"27112d89b5b3689d1faff9134c0ffd3f","responseTime":11,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":890,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.690574,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"559da800-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"559da800-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"4fa2a34d-bb53-48cd-a65f-f45f0052d271","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.3450217} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"00603b80-e330-4fdd-9afc-7818aec1e002","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.3452022} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"559da800-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"559da800-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"559da800-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0'","requestID":"559da800-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0'","requestID":"559da800-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"559da800-848f-11ef-9233-95baf63f17e0"} 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":"559da800-848f-11ef-9233-95baf63f17e0","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":"559da800-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6cb642d7-312c-40f0-9bb5-521ad07420d0","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"55a2b110-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"18e788d30bc6251b8d2118e4193313f3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"18e788d30bc6251b8d2118e4193313f3","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"dfc9d4fd-5d63-467f-9f71-e96e71475040\" in room \"http://localhost/rooms/1dac915c-0524-4348-af8c-c4dca374655c\"","requestID":"55a2b110-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"55a2b110-848f-11ef-8885-7d835fc08c91"} 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/b475723b-5dd3-4f7a-88cc-07aece1dcd7b"},{"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/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0"}}},"level":"info","message":"received a callback","requestID":"18e788d30bc6251b8d2118e4193313f3"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"55a34d50-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8d188a02-2bb4-4b64-89df-7dd66746b446\" in room \"http://localhost/rooms/1dac915c-0524-4348-af8c-c4dca374655c\"","requestID":"55a34d50-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"55a34d50-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8d188a02-2bb4-4b64-89df-7dd66746b446\" in room \"http://localhost/rooms/1dac915c-0524-4348-af8c-c4dca374655c\"","requestID":"55a34d50-848f-11ef-8885-7d835fc08c91"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"18e788d30bc6251b8d2118e4193313f3","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"18e788d30bc6251b8d2118e4193313f3"} device-1 | {"data":{"peerconnection":"6cb642d7-312c-40f0-9bb5-521ad07420d0","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2fce2ffb1748d50a7791c754c579818d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55a681a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"data":{"peerconnection":"6cb642d7-312c-40f0-9bb5-521ad07420d0","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":891,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff7f07d9-afa8-4dea-b776-d85a1eb73c0c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.398107} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":891,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.311647,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"55a681a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","object_type":"device","rebac_allow":false,"scope_allow":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":"55a681a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6cb642d7-312c-40f0-9bb5-521ad07420d0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55a681a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/signaling 200 13ms","method":"POST","requestID":"55a681a0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d151739a4161df6fbc6eb44fc2b98ba8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d151739a4161df6fbc6eb44fc2b98ba8","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55a8cb90-848f-11ef-9233-95baf63f17e0"} 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/b475723b-5dd3-4f7a-88cc-07aece1dcd7b"},{"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/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0"}}},"level":"info","message":"received a callback","requestID":"d151739a4161df6fbc6eb44fc2b98ba8"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":892,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c3282e26-68f6-4e69-a3fa-1c3d756e4310","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.414294} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":892,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.364782,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"55a98ee0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"55a8cb90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","object_type":"device","rebac_allow":false,"scope_allow":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":"55a8cb90-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":893,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55a8cb90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/signaling 200 9ms","method":"POST","requestID":"55a8cb90-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6cb642d7-312c-40f0-9bb5-521ad07420d0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"14951ddb-d102-4d91-86fb-11f7fa658e12","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.4194064} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":893,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.37491,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"55a98ee0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0","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":"55a98ee0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"55a98ee0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0 200 8ms","method":"GET","requestID":"55a98ee0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"d151739a4161df6fbc6eb44fc2b98ba8","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"d151739a4161df6fbc6eb44fc2b98ba8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55ad1150-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":894,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"834d56e3-c036-4760-849f-d2d47c25998b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.4411695} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":894,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.173542,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"55ad1150-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","object_type":"device","rebac_allow":false,"scope_allow":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":"55ad1150-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55ad1150-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/signaling 200 7ms","method":"POST","requestID":"55ad1150-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55ae70e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":895,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"19491e8b-e036-49b3-b80c-773f34202f9e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.4511137} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":895,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.68172,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"55ae70e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"55ae70e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55ae70e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/signaling 200 8ms","method":"POST","requestID":"55ae70e0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs","level":"info","message":"auth send jwt","requestID":"c04847fbc1f2aaaf108e5b3022e89d9f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"c04847fbc1f2aaaf108e5b3022e89d9f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840","requestID":"c04847fbc1f2aaaf108e5b3022e89d9f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":896,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":896,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.850182,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c04847fbc1f2aaaf108e5b3022e89d9f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"c04847fbc1f2aaaf108e5b3022e89d9f","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840","requestID":"c04847fbc1f2aaaf108e5b3022e89d9f"} experiment-1 | {"level":"info","message":"GET /experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840 200 12ms","method":"GET","requestID":"c04847fbc1f2aaaf108e5b3022e89d9f","responseTime":12,"status":200,"url":"/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840 HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c04847fbc1f2aaaf108e5b3022e89d9f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs","level":"info","message":"auth send jwt","requestID":"57ad8faa70b05a08ea72ef24ce241fee"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"57ad8faa70b05a08ea72ef24ce241fee","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840","requestID":"57ad8faa70b05a08ea72ef24ce241fee"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":897,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":897,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.945549,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"57ad8faa70b05a08ea72ef24ce241fee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"57ad8faa70b05a08ea72ef24ce241fee","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Attempting to finish experiment","requestID":"57ad8faa70b05a08ea72ef24ce241fee"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"55b85bf0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":898,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":898,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.294629,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"55b85bf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"55b85bf0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0","device":"b475723b-5dd3-4f7a-88cc-07aece1dcd7b","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0","device":"a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","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/6cb642d7-312c-40f0-9bb5-521ad07420d0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6cb642d7-312c-40f0-9bb5-521ad07420d0","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1dac915c-0524-4348-af8c-c4dca374655c?id=dfc9d4fd-5d63-467f-9f71-e96e71475040 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":"9140e22e39c203b1c249164da451341d"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1dac915c-0524-4348-af8c-c4dca374655c?id=8d188a02-2bb4-4b64-89df-7dd66746b446 HTTP/1.1","status": "101","body_bytes_sent":"438","request_time":"0.158","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"61eabbcc898f21d6e43cb9cfe3ab93ae"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"dfc9d4fd-5d63-467f-9f71-e96e71475040\" in room \"http://localhost/rooms/1dac915c-0524-4348-af8c-c4dca374655c\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"110f1f7fa46168d2fd8e01a31792f553","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"websocket connection closed for participant \"dfc9d4fd-5d63-467f-9f71-e96e71475040\" from room \"http://localhost/rooms/1dac915c-0524-4348-af8c-c4dca374655c\""} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"110f1f7fa46168d2fd8e01a31792f553","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"8d188a02-2bb4-4b64-89df-7dd66746b446\" in room \"http://localhost/rooms/1dac915c-0524-4348-af8c-c4dca374655c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"8d188a02-2bb4-4b64-89df-7dd66746b446\" from room \"http://localhost/rooms/1dac915c-0524-4348-af8c-c4dca374655c\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5c489f231560c200981a97bcf06056cd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b"},{"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/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0"}}},"level":"info","message":"received a callback","requestID":"110f1f7fa46168d2fd8e01a31792f553"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"5c489f231560c200981a97bcf06056cd","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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b"},{"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/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0"}}},"level":"info","message":"received a callback","requestID":"5c489f231560c200981a97bcf06056cd"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6cb642d7-312c-40f0-9bb5-521ad07420d0': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6cb642d7-312c-40f0-9bb5-521ad07420d0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"cc43ed87-46f4-42bc-8f65-21cf32b4b923","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.532924} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"222b3056-8021-4e4e-8835-1fc39f692482","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.533076} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"55b85bf0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"6cb642d7-312c-40f0-9bb5-521ad07420d0","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"55b85bf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0 204 38ms","method":"DELETE","requestID":"55b85bf0-848f-11ef-9233-95baf63f17e0","responseTime":38,"status":204,"url":"/peerconnections/6cb642d7-312c-40f0-9bb5-521ad07420d0"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"},"level":"info","message":"Successfully finished experiment","requestID":"57ad8faa70b05a08ea72ef24ce241fee"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55c09950-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":899,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb475723b-5dd3-4f7a-88cc-07aece1dcd7b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0165bf16-2948-4391-ad72-359d69972b51","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.5703852} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":899,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.25933,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"55c09950-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"55c09950-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55c09950-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/signaling 200 9ms","method":"POST","requestID":"55c09950-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2ef0730c-ed4b-47a4-b58c-64c8f4ce3840': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2ef0730c-ed4b-47a4-b58c-64c8f4ce3840","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"39763f8d-fa87-4719-804e-15012d052506","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.576623} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1334662d-f382-4065-80cc-882016d5c130","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.5768683} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"55c26e10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"57ad8faa70b05a08ea72ef24ce241fee","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":900,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa886b0f9-dfe6-4ba2-8ad7-ccac352901b4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"71c010da-755d-47ba-aca9-f90754f322c1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.5815353} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":900,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.55911,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"55c26e10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"55c26e10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"55c26e10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/signaling 200 9ms","method":"POST","requestID":"55c26e10-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840","requestID":"57ad8faa70b05a08ea72ef24ce241fee"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"57ad8faa70b05a08ea72ef24ce241fee"} experiment-1 | {"level":"info","message":"DELETE /experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840 204 142ms","method":"DELETE","requestID":"57ad8faa70b05a08ea72ef24ce241fee","responseTime":142,"status":204,"url":"/experiments/2ef0730c-ed4b-47a4-b58c-64c8f4ce3840"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"110f1f7fa46168d2fd8e01a31792f553","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"110f1f7fa46168d2fd8e01a31792f553"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"5c489f231560c200981a97bcf06056cd","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"5c489f231560c200981a97bcf06056cd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs","level":"info","message":"auth send jwt","requestID":"21360d6ab14702597016068f57331b93"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"21360d6ab14702597016068f57331b93","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"21360d6ab14702597016068f57331b93"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +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.608","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"3a11c48b880b500b3b83f05f69bdfd60"} gateway-1 | {"time_local":"07/Oct/2024:09:34:22 +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.620","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"c237deb5860c78e851ccfc7590128c02"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":901,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":901,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.998864,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/b475723b-5dd3-4f7a-88cc-07aece1dcd7b' closed"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"21360d6ab14702597016068f57331b93","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"21360d6ab14702597016068f57331b93","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/a886b0f9-dfe6-4ba2-8ad7-ccac352901b4' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3e19f45b-0be1-401c-ba55-b01be4c6be72","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.6767871} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"21360d6ab14702597016068f57331b93","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6db1fd9-0285-474f-9ce7-13f88743a785","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.6809309} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"21360d6ab14702597016068f57331b93","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"bf4bfed0-874a-47d2-842a-118dda093312","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.693482} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c5d62f8-1d7d-40c8-a125-17254f0fc8e9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.6935134} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"21360d6ab14702597016068f57331b93","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.693452198Z"}]},"request_id":"fc3f7ced-1140-422b-a779-2177f6beab85","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.6972208} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"21360d6ab14702597016068f57331b93","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"21360d6ab14702597016068f57331b93"} device-1 | {"level":"info","message":"POST /devices? 201 52ms","method":"POST","requestID":"21360d6ab14702597016068f57331b93","responseTime":52,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.057","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"21360d6ab14702597016068f57331b93"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs","level":"info","message":"auth send jwt","requestID":"4396ce5853821f2877f6e98c863bfa26"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4396ce5853821f2877f6e98c863bfa26","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4396ce5853821f2877f6e98c863bfa26"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":902,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":902,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.626876,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4396ce5853821f2877f6e98c863bfa26","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293662,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Mn0.4DnDvt14GKOZxgwYMeB5z6iB4u5UB40DGzb6lLDloZs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4396ce5853821f2877f6e98c863bfa26","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d43b568b-5514-4026-a8be-977f38208419","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.7250106} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4396ce5853821f2877f6e98c863bfa26","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"58c8b94c-acac-49ae-aead-c6def2af3097","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.7296958} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4396ce5853821f2877f6e98c863bfa26","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"52b0e7fc-8c7e-4a62-9bdb-1ee8d2cee97c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.742196} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e2709906-ad71-4372-8443-4996039f5ebf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.7424114} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"4396ce5853821f2877f6e98c863bfa26","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.742165432Z"}]},"request_id":"43d9c305-bc61-4920-bcce-d5ccb430644a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293662.7466023} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4396ce5853821f2877f6e98c863bfa26","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4396ce5853821f2877f6e98c863bfa26"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"4396ce5853821f2877f6e98c863bfa26","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4396ce5853821f2877f6e98c863bfa26"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c6c843d34de9968a1dc84bb38233880a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"c6c843d34de9968a1dc84bb38233880a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/e1c58076-d523-4381-aa51-43be1aed87e4/websocket 200 1ms","method":"OPTIONS","requestID":"c6c843d34de9968a1dc84bb38233880a","responseTime":1,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e1c58076-d523-4381-aa51-43be1aed87e4/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":"c6c843d34de9968a1dc84bb38233880a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc","level":"info","message":"auth send jwt","requestID":"d6be24efcab95b1879b1560c3afaa8de"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d6be24efcab95b1879b1560c3afaa8de","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d6be24efcab95b1879b1560c3afaa8de"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":903,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":903,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.54831,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d6be24efcab95b1879b1560c3afaa8de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d6be24efcab95b1879b1560c3afaa8de","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"80db3e503deafddbd3e0a6a51cf62850","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"80db3e503deafddbd3e0a6a51cf62850","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/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":"80db3e503deafddbd3e0a6a51cf62850"} device-1 | {"level":"info","message":"OPTIONS /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/websocket 200 1ms","method":"OPTIONS","requestID":"80db3e503deafddbd3e0a6a51cf62850","responseTime":1,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d6be24efcab95b1879b1560c3afaa8de"} gateway-1 | {"time_local":"07/Oct/2024:09:34:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e1c58076-d523-4381-aa51-43be1aed87e4/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":"d6be24efcab95b1879b1560c3afaa8de"} device-1 | {"level":"info","message":"POST /devices/e1c58076-d523-4381-aa51-43be1aed87e4/websocket 200 21ms","method":"POST","requestID":"d6be24efcab95b1879b1560c3afaa8de","responseTime":21,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc","level":"info","message":"auth send jwt","requestID":"838c21ce320f4595dbc70a8fc7b1cf5a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"838c21ce320f4595dbc70a8fc7b1cf5a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"838c21ce320f4595dbc70a8fc7b1cf5a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":904,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":904,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.687259,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"838c21ce320f4595dbc70a8fc7b1cf5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"838c21ce320f4595dbc70a8fc7b1cf5a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"838c21ce320f4595dbc70a8fc7b1cf5a"} device-1 | {"level":"info","message":"POST /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/websocket 200 28ms","method":"POST","requestID":"838c21ce320f4595dbc70a8fc7b1cf5a","responseTime":28,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.034","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"838c21ce320f4595dbc70a8fc7b1cf5a"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c3ad05ce2de5d2388eb09a9292b6c5ed","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"c3ad05ce2de5d2388eb09a9292b6c5ed","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/e1c58076-d523-4381-aa51-43be1aed87e4? 200 1ms","method":"OPTIONS","requestID":"c3ad05ce2de5d2388eb09a9292b6c5ed","responseTime":1,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e1c58076-d523-4381-aa51-43be1aed87e4? 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":"c3ad05ce2de5d2388eb09a9292b6c5ed"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc","level":"info","message":"auth send jwt","requestID":"22250c4097c75efbab8e068dec56da79"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"22250c4097c75efbab8e068dec56da79","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"22250c4097c75efbab8e068dec56da79"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f' connected"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":905,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":905,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.932901,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"22250c4097c75efbab8e068dec56da79","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"22250c4097c75efbab8e068dec56da79","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.742165432Z"}]},"request_id":"64eccdb7-d198-4aca-85de-68c3bfc83579","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293664.8105798} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"22250c4097c75efbab8e068dec56da79","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2f03e9cb957d0481ca2127144b829993","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3ecfcf60-e1d4-4b82-bd40-d7e7049a6a81","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293664.8160453} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2f03e9cb957d0481ca2127144b829993","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"22250c4097c75efbab8e068dec56da79","responseTime":5,"status":200,"url":"/relations/update"} gateway-1 | {"time_local":"07/Oct/2024:09:34:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f? 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":"2f03e9cb957d0481ca2127144b829993"} device-1 | {"level":"info","message":"OPTIONS /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f? 200 1ms","method":"OPTIONS","requestID":"2f03e9cb957d0481ca2127144b829993","responseTime":1,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc","level":"info","message":"auth send jwt","requestID":"b16f143f5a800ddde5f6bf1fbd141080"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b16f143f5a800ddde5f6bf1fbd141080","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"b16f143f5a800ddde5f6bf1fbd141080"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":906,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":906,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.107799,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b16f143f5a800ddde5f6bf1fbd141080","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b16f143f5a800ddde5f6bf1fbd141080","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.742165432Z"}]},"request_id":"63268465-eebc-47d7-ad6f-b67fe266ff3a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293664.8309941} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"22250c4097c75efbab8e068dec56da79","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"22250c4097c75efbab8e068dec56da79"} gateway-1 | {"time_local":"07/Oct/2024:09:34:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e1c58076-d523-4381-aa51-43be1aed87e4? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"22250c4097c75efbab8e068dec56da79"} device-1 | {"level":"info","message":"PATCH /devices/e1c58076-d523-4381-aa51-43be1aed87e4? 200 34ms","method":"PATCH","requestID":"22250c4097c75efbab8e068dec56da79","responseTime":34,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.693452198Z"}]},"request_id":"d1b53b55-56a1-485a-be8f-5596efd713b8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293664.8391526} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b16f143f5a800ddde5f6bf1fbd141080","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eb857073-1db1-4daa-9c35-1c67a1b7c972","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293664.8456068} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"b16f143f5a800ddde5f6bf1fbd141080","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.693452198Z"}]},"request_id":"a80bbc70-20fd-44ee-828b-da0625272f50","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293664.8563087} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b16f143f5a800ddde5f6bf1fbd141080","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"b16f143f5a800ddde5f6bf1fbd141080"} gateway-1 | {"time_local":"07/Oct/2024:09:34:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f? 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":"b16f143f5a800ddde5f6bf1fbd141080"} device-1 | {"level":"info","message":"PATCH /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f? 200 32ms","method":"PATCH","requestID":"b16f143f5a800ddde5f6bf1fbd141080","responseTime":32,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc","level":"info","message":"auth send jwt","requestID":"2a5fb88369a9b43b27c1ddf657b399a0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2a5fb88369a9b43b27c1ddf657b399a0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2a5fb88369a9b43b27c1ddf657b399a0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":907,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":907,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.156608,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2a5fb88369a9b43b27c1ddf657b399a0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2a5fb88369a9b43b27c1ddf657b399a0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.693452198Z"}]},"request_id":"03af1cfe-dad2-4d99-93e4-79ffe665ce0b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293664.8786757} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2a5fb88369a9b43b27c1ddf657b399a0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2a5fb88369a9b43b27c1ddf657b399a0"} device-1 | {"level":"info","message":"GET /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f? 200 12ms","method":"GET","requestID":"2a5fb88369a9b43b27c1ddf657b399a0","responseTime":12,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f? 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":"2a5fb88369a9b43b27c1ddf657b399a0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc","level":"info","message":"auth send jwt","requestID":"4aa8546768dcae097dd9a7f50dde2ef9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4aa8546768dcae097dd9a7f50dde2ef9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4aa8546768dcae097dd9a7f50dde2ef9"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":908,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":908,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.188088,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4aa8546768dcae097dd9a7f50dde2ef9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4aa8546768dcae097dd9a7f50dde2ef9","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.742165432Z"}]},"request_id":"2e1aba79-8d27-47d1-a05a-65e18513d1eb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293664.899412} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4aa8546768dcae097dd9a7f50dde2ef9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4aa8546768dcae097dd9a7f50dde2ef9"} gateway-1 | {"time_local":"07/Oct/2024:09:34:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e1c58076-d523-4381-aa51-43be1aed87e4? 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":"4aa8546768dcae097dd9a7f50dde2ef9"} device-1 | {"level":"info","message":"GET /devices/e1c58076-d523-4381-aa51-43be1aed87e4? 200 14ms","method":"GET","requestID":"4aa8546768dcae097dd9a7f50dde2ef9","responseTime":14,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc","level":"info","message":"auth send jwt","requestID":"8385663bd13571cc07734270930dc958"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8385663bd13571cc07734270930dc958","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8385663bd13571cc07734270930dc958"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":909,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":909,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.082069,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8385663bd13571cc07734270930dc958","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8385663bd13571cc07734270930dc958","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Attempting to run experiment","requestID":"8385663bd13571cc07734270930dc958"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Attempting to book experiment","requestID":"8385663bd13571cc07734270930dc958"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Successfully booked experiment","requestID":"8385663bd13571cc07734270930dc958"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"572cac70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"572cd380-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":910,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":910,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.748972,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":911,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"572cac70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"572cac70-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":911,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.825362,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"572cd380-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"572cd380-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.693452198Z"}]},"request_id":"b1bc653d-6e5d-4586-8be3-0ed459113cee","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293664.9582462} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"572cac70-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.742165432Z"}]},"request_id":"80b16776-4aca-4490-a4d5-6d7650e440c4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293664.9589722} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"572cd380-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"572cac70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f? 200 11ms","method":"GET","requestID":"572cac70-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"572cd380-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e1c58076-d523-4381-aa51-43be1aed87e4? 200 11ms","method":"GET","requestID":"572cd380-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Setting up experiment","requestID":"8385663bd13571cc07734270930dc958"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8385663bd13571cc07734270930dc958"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8385663bd13571cc07734270930dc958"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8385663bd13571cc07734270930dc958"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8385663bd13571cc07734270930dc958"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8385663bd13571cc07734270930dc958"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8385663bd13571cc07734270930dc958"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Successfully set up experiment","requestID":"8385663bd13571cc07734270930dc958"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"57358610-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5735d430-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"57362250-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":912,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Successfully running experiment","requestID":"8385663bd13571cc07734270930dc958"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":913,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":912,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.519649,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"57358610-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"57358610-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":913,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.067531,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5735d430-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"5735d430-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36958","level":"info","msg":"Received request.","req_id":914,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.693452198Z"}]},"request_id":"5d0ea01e-2536-41cf-8677-832d214c7946","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.0276728} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2e7101e2-ad63-4ded-946b-db71a569cc06","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.0278475} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"57358610-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:36958","level":"info","msg":"Sent response.","req_id":914,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.714702,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"57362250-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","object_type":"device","rebac_allow":false,"scope_allow":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":"57362250-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.742165432Z"}]},"request_id":"fa054ed4-9700-4f9e-98b9-cf9115339b1f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.033792} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5735d430-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"57358610-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f? 200 27ms","method":"GET","requestID":"57358610-848f-11ef-9233-95baf63f17e0","responseTime":27,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"57362250-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd3e1d02e-55db-4b8e-95aa-24e525776a4b#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd3e1d02e-55db-4b8e-95aa-24e525776a4b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"3c7407ed-05d1-4ec6-aa47-ec21b8c02a90","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.038229} device-1 | {"level":"info","message":"POST /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/signaling 200 26ms","method":"POST","requestID":"57362250-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1c924dbd-8ee0-469b-87e9-f53e70607078","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.0385294} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"8385663bd13571cc07734270930dc958","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"573a6810-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":915,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8385663bd13571cc07734270930dc958"} gateway-1 | {"time_local":"07/Oct/2024:09:34:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1288","request_time":"0.143","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8385663bd13571cc07734270930dc958"} experiment-1 | {"level":"info","message":"POST /experiments? 201 136ms","method":"POST","requestID":"8385663bd13571cc07734270930dc958","responseTime":136,"status":201,"url":"/experiments?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8905003a-3d50-4adb-b624-d3277d23a6ce","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.0478368} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":915,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.920275,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"573a6810-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","object_type":"device","rebac_allow":false,"scope_allow":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":"573a6810-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NX0.KQgXO-JWty1Bvk5hLaTZ7dLm4ZE6Do7vvEQR1EOZJdA","level":"info","message":"auth send jwt","requestID":"15182c4ba515dafde8043e4f6be5c9f7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"15182c4ba515dafde8043e4f6be5c9f7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5735d430-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e1c58076-d523-4381-aa51-43be1aed87e4? 200 43ms","method":"GET","requestID":"5735d430-848f-11ef-9233-95baf63f17e0","responseTime":43,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"15182c4ba515dafde8043e4f6be5c9f7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"573cd910-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"573a6810-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e1c58076-d523-4381-aa51-43be1aed87e4/signaling 200 18ms","method":"POST","requestID":"573a6810-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":916,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":917,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":916,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.009037,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"15182c4ba515dafde8043e4f6be5c9f7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293665,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NX0.KQgXO-JWty1Bvk5hLaTZ7dLm4ZE6Do7vvEQR1EOZJdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"15182c4ba515dafde8043e4f6be5c9f7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7ddc1cc1-2a18-41b9-abfc-16a4ce6c265b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.0616853} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":917,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.767056,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"573cd910-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","object_type":"device","rebac_allow":false,"scope_allow":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":"573cd910-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.693452198Z"}]},"request_id":"cb23f32b-1d10-4b27-8d24-06b9bb8a3109","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.0640588} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"15182c4ba515dafde8043e4f6be5c9f7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"573cd910-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/signaling 200 10ms","method":"POST","requestID":"573cd910-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"15182c4ba515dafde8043e4f6be5c9f7"} gateway-1 | {"time_local":"07/Oct/2024:09:34:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f? 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":"15182c4ba515dafde8043e4f6be5c9f7"} device-1 | {"level":"info","message":"GET /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f? 200 12ms","method":"GET","requestID":"15182c4ba515dafde8043e4f6be5c9f7","responseTime":12,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"573eadd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":918,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NX0.KQgXO-JWty1Bvk5hLaTZ7dLm4ZE6Do7vvEQR1EOZJdA","level":"info","message":"auth send jwt","requestID":"cafdad634f677dcf4909c4769dbaf2dc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cafdad634f677dcf4909c4769dbaf2dc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cafdad634f677dcf4909c4769dbaf2dc"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dba0cfd2-a225-40d6-94d3-6ea3b548c29f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.0741014} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":918,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.822562,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"573eadd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","object_type":"device","rebac_allow":false,"scope_allow":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":"573eadd0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":919,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":919,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.645377,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"cafdad634f677dcf4909c4769dbaf2dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293665,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NX0.KQgXO-JWty1Bvk5hLaTZ7dLm4ZE6Do7vvEQR1EOZJdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"cafdad634f677dcf4909c4769dbaf2dc","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"573eadd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e1c58076-d523-4381-aa51-43be1aed87e4/signaling 200 10ms","method":"POST","requestID":"573eadd0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.742165432Z"}]},"request_id":"2b164bae-7f5a-407f-97b1-0631c8731438","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.0801582} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8385663bd13571cc07734270930dc958"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cafdad634f677dcf4909c4769dbaf2dc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5740a9a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5740d0b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cafdad634f677dcf4909c4769dbaf2dc"} device-1 | {"level":"info","message":"GET /devices/e1c58076-d523-4381-aa51-43be1aed87e4? 200 12ms","method":"GET","requestID":"cafdad634f677dcf4909c4769dbaf2dc","responseTime":12,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e1c58076-d523-4381-aa51-43be1aed87e4? 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":"cafdad634f677dcf4909c4769dbaf2dc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":920,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":920,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.136327,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":921,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5740a9a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5740a9a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":921,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.966197,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5740d0b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5740d0b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.693452198Z"}]},"request_id":"f80a43cc-46e7-4ebd-b9a1-10808ebe35f8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.0894356} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5740a9a0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:22.742165432Z"}]},"request_id":"ef3035cc-5bd1-45a1-b46c-690e7417b445","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.0901678} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5740d0b0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5740a9a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f? 200 12ms","method":"GET","requestID":"5740a9a0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5740d0b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e1c58076-d523-4381-aa51-43be1aed87e4? 200 12ms","method":"GET","requestID":"5740d0b0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Building connection plan","requestID":"8385663bd13571cc07734270930dc958"} 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":"ed7b078b-3136-41f1-a31d-03bb6f88003c"},{"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":"a4040352-1ee6-47b8-bf80-b6285fe721de"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"c11390bc-b807-4e8d-bc6d-86f49c20b8b7"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8385663bd13571cc07734270930dc958"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"57431aa0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"57431aa0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"57431aa0-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754?id=3311037e-ff5f-4379-94db-c616312a6f05","ws://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754?id=36635f6d-c86e-4974-a0aa-0144827ed5ed"]},"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/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f"},{"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/e1c58076-d523-4381-aa51-43be1aed87e4"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"8385663bd13571cc07734270930dc958"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"57438fd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":922,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":922,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.660361,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"57438fd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293664,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NH0.Ly3H_mPtBLpchU5KRWk_8FVzMiGhsO2GMsCnmNo6vqc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"57438fd0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"734f1442-7af3-4b36-8875-17ec1e729b5c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.1130211} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"34b1fa6a-a776-482e-93df-f80836ee5e95","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.1133244} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"57438fd0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"57438fd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"57438fd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731'","requestID":"57438fd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731'","requestID":"57438fd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"57438fd0-848f-11ef-9233-95baf63f17e0"} 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":"57438fd0-848f-11ef-9233-95baf63f17e0","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":"57438fd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1122cf3e-efcd-40e8-ad99-02edcf83b731","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"57493520-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"36635f6d-c86e-4974-a0aa-0144827ed5ed\" in room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\"","requestID":"57493520-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"57493520-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"57498340-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3311037e-ff5f-4379-94db-c616312a6f05\" in room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\"","requestID":"57498340-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"57498340-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ad8362c472bc9dd762b8fa9badf86117","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ad8362c472bc9dd762b8fa9badf86117","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":"connecting","url":"http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f"},{"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/e1c58076-d523-4381-aa51-43be1aed87e4"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731"}}},"level":"info","message":"received a callback","requestID":"ad8362c472bc9dd762b8fa9badf86117"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"36635f6d-c86e-4974-a0aa-0144827ed5ed\" in room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"36635f6d-c86e-4974-a0aa-0144827ed5ed\" in room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"36635f6d-c86e-4974-a0aa-0144827ed5ed\" in room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"36635f6d-c86e-4974-a0aa-0144827ed5ed\" in room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"36635f6d-c86e-4974-a0aa-0144827ed5ed\" in room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"36635f6d-c86e-4974-a0aa-0144827ed5ed\" in room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"36635f6d-c86e-4974-a0aa-0144827ed5ed\" in room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"36635f6d-c86e-4974-a0aa-0144827ed5ed\" in room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\""} device-1 | {"data":{"peerconnection":"1122cf3e-efcd-40e8-ad99-02edcf83b731","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"ad8362c472bc9dd762b8fa9badf86117","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"ad8362c472bc9dd762b8fa9badf86117"} device-1 | {"data":{"peerconnection":"1122cf3e-efcd-40e8-ad99-02edcf83b731","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8385663bd13571cc07734270930dc958"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"574df010-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":923,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6df19e6a-1609-4b36-97e3-ce47aba4bc1a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.1734233} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":923,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.643916,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"574df010-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","object_type":"device","rebac_allow":false,"scope_allow":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":"574df010-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"1122cf3e-efcd-40e8-ad99-02edcf83b731","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"574df010-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/signaling 200 9ms","method":"POST","requestID":"574df010-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"53dab256079bfdd227a9174b956a9cb3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"53dab256079bfdd227a9174b956a9cb3","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"574f9dc0-848f-11ef-9233-95baf63f17e0"} 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/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f"},{"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/e1c58076-d523-4381-aa51-43be1aed87e4"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731"}}},"level":"info","message":"received a callback","requestID":"53dab256079bfdd227a9174b956a9cb3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":924,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65288806-febb-46da-9281-0264866d477f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.184852} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":924,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.38722,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"57508820-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"574f9dc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"574f9dc0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":925,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"574f9dc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e1c58076-d523-4381-aa51-43be1aed87e4/signaling 200 9ms","method":"POST","requestID":"574f9dc0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1122cf3e-efcd-40e8-ad99-02edcf83b731","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"aa156ecc-fe96-4076-bb04-25151172d7f9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.1907687} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":925,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.802729,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"57508820-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731","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":"57508820-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"57508820-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731 200 8ms","method":"GET","requestID":"57508820-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 25ms","method":"POST","requestID":"53dab256079bfdd227a9174b956a9cb3","responseTime":25,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"53dab256079bfdd227a9174b956a9cb3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"57539560-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":926,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"98cada06-f5da-4b9d-90ae-82aeabb05032","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.210771} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":926,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.102008,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"57539560-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","object_type":"device","rebac_allow":false,"scope_allow":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":"57539560-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"57539560-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/signaling 200 8ms","method":"POST","requestID":"57539560-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"57551c00-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":927,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4252fd49-e697-4add-a8ba-bfb18a66e2bc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.2197769} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":927,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.282856,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"57551c00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","object_type":"device","rebac_allow":false,"scope_allow":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":"57551c00-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"57551c00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e1c58076-d523-4381-aa51-43be1aed87e4/signaling 200 7ms","method":"POST","requestID":"57551c00-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NX0.KQgXO-JWty1Bvk5hLaTZ7dLm4ZE6Do7vvEQR1EOZJdA","level":"info","message":"auth send jwt","requestID":"f7556e5cc54008a29d67a1d834db5758"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f7556e5cc54008a29d67a1d834db5758","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b","requestID":"f7556e5cc54008a29d67a1d834db5758"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":928,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":928,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.663443,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f7556e5cc54008a29d67a1d834db5758","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293665,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NX0.KQgXO-JWty1Bvk5hLaTZ7dLm4ZE6Do7vvEQR1EOZJdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f7556e5cc54008a29d67a1d834db5758","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b","requestID":"f7556e5cc54008a29d67a1d834db5758"} gateway-1 | {"time_local":"07/Oct/2024:09:34:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b HTTP/1.1","status": "200","body_bytes_sent":"1361","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f7556e5cc54008a29d67a1d834db5758"} experiment-1 | {"level":"info","message":"GET /experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b 200 14ms","method":"GET","requestID":"f7556e5cc54008a29d67a1d834db5758","responseTime":14,"status":200,"url":"/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NX0.KQgXO-JWty1Bvk5hLaTZ7dLm4ZE6Do7vvEQR1EOZJdA","level":"info","message":"auth send jwt","requestID":"2dfe3842232a6df18b60163feb94458a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"2dfe3842232a6df18b60163feb94458a","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b","requestID":"2dfe3842232a6df18b60163feb94458a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":929,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":929,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":2.603388,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2dfe3842232a6df18b60163feb94458a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293665,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NX0.KQgXO-JWty1Bvk5hLaTZ7dLm4ZE6Do7vvEQR1EOZJdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"2dfe3842232a6df18b60163feb94458a","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Attempting to finish experiment","requestID":"2dfe3842232a6df18b60163feb94458a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5760dbd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":930,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":930,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.30877,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5760dbd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293665,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NX0.KQgXO-JWty1Bvk5hLaTZ7dLm4ZE6Do7vvEQR1EOZJdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5760dbd0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731","device":"d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731","device":"e1c58076-d523-4381-aa51-43be1aed87e4","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"07/Oct/2024:09:34:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754?id=3311037e-ff5f-4379-94db-c616312a6f05 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.174","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2a29eb93b45a965593048fa7e914f0bb"} gateway-1 | {"time_local":"07/Oct/2024:09:34:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754?id=36635f6d-c86e-4974-a0aa-0144827ed5ed HTTP/1.1","status": "101","body_bytes_sent":"874","request_time":"0.175","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"19eb053436b519c5c3ac851c9dba6d88"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"3311037e-ff5f-4379-94db-c616312a6f05\" in room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"3311037e-ff5f-4379-94db-c616312a6f05\" from room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"36635f6d-c86e-4974-a0aa-0144827ed5ed\" in room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"36635f6d-c86e-4974-a0aa-0144827ed5ed\" from room \"http://localhost/rooms/79b7d6d2-1286-4fd8-92a3-556bb73fd754\""} device-1 | {"data":{"peerconnection":"1122cf3e-efcd-40e8-ad99-02edcf83b731","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1122cf3e-efcd-40e8-ad99-02edcf83b731': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F1122cf3e-efcd-40e8-ad99-02edcf83b731","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"a52cea6c-5286-428b-83ac-ff0ff79d4f08","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.3176768} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e4628fb3cb526ae6faed5c7a36c35ad5","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5aeb1bd2-fa0a-4737-99e3-da3b865376be","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.3189158} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e4628fb3cb526ae6faed5c7a36c35ad5","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"5760dbd0-848f-11ef-9233-95baf63f17e0","responseTime":12,"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/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f"},{"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/e1c58076-d523-4381-aa51-43be1aed87e4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731"}}},"level":"info","message":"received a callback","requestID":"e4628fb3cb526ae6faed5c7a36c35ad5"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ae5020a02b8ab9f06dade7d033442fa2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ae5020a02b8ab9f06dade7d033442fa2","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f"},{"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/e1c58076-d523-4381-aa51-43be1aed87e4"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731"}}},"level":"info","message":"received a callback","requestID":"ae5020a02b8ab9f06dade7d033442fa2"} device-1 | {"data":{"peerconnection":"1122cf3e-efcd-40e8-ad99-02edcf83b731","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5760dbd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731 204 50ms","method":"DELETE","requestID":"5760dbd0-848f-11ef-9233-95baf63f17e0","responseTime":50,"status":204,"url":"/peerconnections/1122cf3e-efcd-40e8-ad99-02edcf83b731"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"},"level":"info","message":"Successfully finished experiment","requestID":"2dfe3842232a6df18b60163feb94458a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"576bd850-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":931,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d437d9-c2c1-41c6-922c-36f5ffdbf21f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04c9bba2-a105-41e5-9ddd-6b685847e2c9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.372507} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":931,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.174794,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"576bd850-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f","object_type":"device","rebac_allow":false,"scope_allow":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":"576bd850-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"576bd850-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/signaling 200 14ms","method":"POST","requestID":"576bd850-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd3e1d02e-55db-4b8e-95aa-24e525776a4b': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd3e1d02e-55db-4b8e-95aa-24e525776a4b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"c02dd3e9-31b6-448d-a6c8-6d290f340375","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.3793423} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9652c53a-e4ec-4cdf-bdd0-cdc13dfb5d4e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.3799968} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"576e7060-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"2dfe3842232a6df18b60163feb94458a","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":932,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe1c58076-d523-4381-aa51-43be1aed87e4","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56565074-efef-4d69-940b-5156b342eb9a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.3888392} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":932,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.891664,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"576e7060-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e1c58076-d523-4381-aa51-43be1aed87e4","object_type":"device","rebac_allow":false,"scope_allow":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":"576e7060-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"576e7060-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e1c58076-d523-4381-aa51-43be1aed87e4/signaling 200 13ms","method":"POST","requestID":"576e7060-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/e1c58076-d523-4381-aa51-43be1aed87e4/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b","requestID":"2dfe3842232a6df18b60163feb94458a"} gateway-1 | {"time_local":"07/Oct/2024:09:34:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b 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":"2dfe3842232a6df18b60163feb94458a"} experiment-1 | {"level":"info","message":"DELETE /experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b 204 170ms","method":"DELETE","requestID":"2dfe3842232a6df18b60163feb94458a","responseTime":170,"status":204,"url":"/experiments/d3e1d02e-55db-4b8e-95aa-24e525776a4b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"e4628fb3cb526ae6faed5c7a36c35ad5","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.131","http_referrer":"","http_user_agent":"node-fetch","requestID":"e4628fb3cb526ae6faed5c7a36c35ad5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"ae5020a02b8ab9f06dade7d033442fa2","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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":"ae5020a02b8ab9f06dade7d033442fa2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NX0.KQgXO-JWty1Bvk5hLaTZ7dLm4ZE6Do7vvEQR1EOZJdA","level":"info","message":"auth send jwt","requestID":"78acfa7cf645c421ae7788a4cdce9417"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"78acfa7cf645c421ae7788a4cdce9417","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"78acfa7cf645c421ae7788a4cdce9417"} gateway-1 | {"time_local":"07/Oct/2024:09:34:25 +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.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":"e262e2696625851cadae547f7eddad97"} gateway-1 | {"time_local":"07/Oct/2024:09:34:25 +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.705","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"a41ec7f2b8e7eb586161e9a10e973678"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":933,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":933,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.90138,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78acfa7cf645c421ae7788a4cdce9417","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293665,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NX0.KQgXO-JWty1Bvk5hLaTZ7dLm4ZE6Do7vvEQR1EOZJdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"78acfa7cf645c421ae7788a4cdce9417","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/e1c58076-d523-4381-aa51-43be1aed87e4' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/d4d437d9-c2c1-41c6-922c-36f5ffdbf21f' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fde7b56e-39df-4222-9eee-de0f2be67aba","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.4811058} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"78acfa7cf645c421ae7788a4cdce9417","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0df77d5d-57c0-4999-a039-490e30ae6c89","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.4860945} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"78acfa7cf645c421ae7788a4cdce9417","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"2ae2861a-03c6-446a-95fb-8dd453211a20","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.4965858} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e6ecf767-3613-44cb-bd5e-770e8731efc8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.4966612} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"78acfa7cf645c421ae7788a4cdce9417","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.496551167Z"}]},"request_id":"cd15ab92-3d9e-4fd0-bd51-8a3922fc021d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.5009983} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"78acfa7cf645c421ae7788a4cdce9417","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"78acfa7cf645c421ae7788a4cdce9417"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.056","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"78acfa7cf645c421ae7788a4cdce9417"} device-1 | {"level":"info","message":"POST /devices? 201 48ms","method":"POST","requestID":"78acfa7cf645c421ae7788a4cdce9417","responseTime":48,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NX0.KQgXO-JWty1Bvk5hLaTZ7dLm4ZE6Do7vvEQR1EOZJdA","level":"info","message":"auth send jwt","requestID":"37abe8fc4b902c1aaeafd57c03d6c066"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"37abe8fc4b902c1aaeafd57c03d6c066","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"37abe8fc4b902c1aaeafd57c03d6c066"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":934,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":934,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.87204,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:25Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"37abe8fc4b902c1aaeafd57c03d6c066","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293665,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2NX0.KQgXO-JWty1Bvk5hLaTZ7dLm4ZE6Do7vvEQR1EOZJdA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"37abe8fc4b902c1aaeafd57c03d6c066","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"eebd1a3b-60ed-427f-8302-deb7d4f4d3ef","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.5270398} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"37abe8fc4b902c1aaeafd57c03d6c066","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f6cbf14b-c259-42d7-9dea-87b5bb4a1436","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.5317142} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"37abe8fc4b902c1aaeafd57c03d6c066","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"dc3543d4-3cab-487b-b86f-8cd47c8e3edf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.540205} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"31a2c559-b3b1-495d-8c1e-408f8923b2ca","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.5403655} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"37abe8fc4b902c1aaeafd57c03d6c066","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.540178093Z"}]},"request_id":"7d943b0c-b00d-4853-9141-1ca4bcb9614d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293665.5449374} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"37abe8fc4b902c1aaeafd57c03d6c066","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"37abe8fc4b902c1aaeafd57c03d6c066"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"37abe8fc4b902c1aaeafd57c03d6c066","responseTime":38,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"37abe8fc4b902c1aaeafd57c03d6c066"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Nn0.kGrEcDYuHnrHjiErIaJ51sqm_5Xz2LaqM4k-UDdsnGc","level":"info","message":"auth send jwt","requestID":"1d0291fecde600e87fd1abdaba1f52aa"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1d0291fecde600e87fd1abdaba1f52aa","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1d0291fecde600e87fd1abdaba1f52aa"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":935,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":935,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.210853,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1d0291fecde600e87fd1abdaba1f52aa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293666,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Nn0.kGrEcDYuHnrHjiErIaJ51sqm_5Xz2LaqM4k-UDdsnGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1d0291fecde600e87fd1abdaba1f52aa","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.540178093Z"}]},"request_id":"bb6ad166-2b5c-422a-9141-a3a3b2dc95d7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293666.036812} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1d0291fecde600e87fd1abdaba1f52aa","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b356bb9d-6efb-4818-a5e3-8e5f9e723f56","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293666.041727} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"1d0291fecde600e87fd1abdaba1f52aa","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.540178093Z"}]},"request_id":"935f19a9-f6b8-4e80-9bd0-b5815d41f549","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293666.0537276} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1d0291fecde600e87fd1abdaba1f52aa","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1d0291fecde600e87fd1abdaba1f52aa"} device-1 | {"level":"info","message":"PATCH /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf 200 30ms","method":"PATCH","requestID":"1d0291fecde600e87fd1abdaba1f52aa","responseTime":30,"status":200,"url":"/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf"} gateway-1 | {"time_local":"07/Oct/2024:09:34:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1d0291fecde600e87fd1abdaba1f52aa"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Nn0.kGrEcDYuHnrHjiErIaJ51sqm_5Xz2LaqM4k-UDdsnGc","level":"info","message":"auth send jwt","requestID":"7a5765efbe7a723696857f490d2c3e1e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7a5765efbe7a723696857f490d2c3e1e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7a5765efbe7a723696857f490d2c3e1e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":936,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":936,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.799479,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7a5765efbe7a723696857f490d2c3e1e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293666,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2Nn0.kGrEcDYuHnrHjiErIaJ51sqm_5Xz2LaqM4k-UDdsnGc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7a5765efbe7a723696857f490d2c3e1e","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7a5765efbe7a723696857f490d2c3e1e"} gateway-1 | {"time_local":"07/Oct/2024:09:34:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf/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.9","requestID":"7a5765efbe7a723696857f490d2c3e1e"} device-1 | {"level":"info","message":"POST /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf/websocket 200 20ms","method":"POST","requestID":"7a5765efbe7a723696857f490d2c3e1e","responseTime":20,"status":200,"url":"/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ce3aa7006c28b5c2b623ae04ef22297e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"ce3aa7006c28b5c2b623ae04ef22297e","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/websocket 200 1ms","method":"OPTIONS","requestID":"ce3aa7006c28b5c2b623ae04ef22297e","responseTime":1,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/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":"ce3aa7006c28b5c2b623ae04ef22297e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs","level":"info","message":"auth send jwt","requestID":"af15df92c3abd8f4cadcae1358ff332a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"af15df92c3abd8f4cadcae1358ff332a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"af15df92c3abd8f4cadcae1358ff332a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":937,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":937,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.601375,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"af15df92c3abd8f4cadcae1358ff332a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"af15df92c3abd8f4cadcae1358ff332a","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"af15df92c3abd8f4cadcae1358ff332a"} device-1 | {"level":"info","message":"POST /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/websocket 200 23ms","method":"POST","requestID":"af15df92c3abd8f4cadcae1358ff332a","responseTime":23,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/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":"af15df92c3abd8f4cadcae1358ff332a"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a331cb23107fffe13a1c554b7059088f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a331cb23107fffe13a1c554b7059088f","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0? 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":"a331cb23107fffe13a1c554b7059088f"} device-1 | {"level":"info","message":"OPTIONS /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0? 200 1ms","method":"OPTIONS","requestID":"a331cb23107fffe13a1c554b7059088f","responseTime":1,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs","level":"info","message":"auth send jwt","requestID":"d30d76d73a47b6b653f36c91a0721dfb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d30d76d73a47b6b653f36c91a0721dfb","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d30d76d73a47b6b653f36c91a0721dfb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":938,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":938,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.790937,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d30d76d73a47b6b653f36c91a0721dfb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d30d76d73a47b6b653f36c91a0721dfb","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.496551167Z"}]},"request_id":"3e91f201-e1a7-4569-a55c-693690cc8f45","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.6459255} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d30d76d73a47b6b653f36c91a0721dfb","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3a6a5326-93d8-41e0-bce4-7dc3105f1905","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.6513224} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"d30d76d73a47b6b653f36c91a0721dfb","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.496551167Z"}]},"request_id":"3d50e9f7-3eff-4998-a4e8-4fbefc5df927","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.6626909} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d30d76d73a47b6b653f36c91a0721dfb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d30d76d73a47b6b653f36c91a0721dfb"} gateway-1 | {"time_local":"07/Oct/2024:09:34:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.036","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d30d76d73a47b6b653f36c91a0721dfb"} device-1 | {"level":"info","message":"PATCH /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0? 200 30ms","method":"PATCH","requestID":"d30d76d73a47b6b653f36c91a0721dfb","responseTime":30,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs","level":"info","message":"auth send jwt","requestID":"c67fa8c2af1573814f2b8b0f02f4d650"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"c67fa8c2af1573814f2b8b0f02f4d650","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c67fa8c2af1573814f2b8b0f02f4d650"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":939,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":939,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.001948,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c67fa8c2af1573814f2b8b0f02f4d650","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"c67fa8c2af1573814f2b8b0f02f4d650","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.496551167Z"}]},"request_id":"2aca98ec-8800-4b8e-aead-c90c40ed464f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.693624} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"c67fa8c2af1573814f2b8b0f02f4d650","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c67fa8c2af1573814f2b8b0f02f4d650"} gateway-1 | {"time_local":"07/Oct/2024:09:34:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0? 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":"c67fa8c2af1573814f2b8b0f02f4d650"} device-1 | {"level":"info","message":"GET /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0? 200 19ms","method":"GET","requestID":"c67fa8c2af1573814f2b8b0f02f4d650","responseTime":19,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs","level":"info","message":"auth send jwt","requestID":"96c0303e04ab3e7024a89ff4a85ce2fb"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"96c0303e04ab3e7024a89ff4a85ce2fb","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"96c0303e04ab3e7024a89ff4a85ce2fb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":940,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":940,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.209312,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"96c0303e04ab3e7024a89ff4a85ce2fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"96c0303e04ab3e7024a89ff4a85ce2fb","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.540178093Z"}]},"request_id":"90a6144d-4443-47e3-8e1d-13e825732dea","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.7191622} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"96c0303e04ab3e7024a89ff4a85ce2fb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"96c0303e04ab3e7024a89ff4a85ce2fb"} gateway-1 | {"time_local":"07/Oct/2024:09:34:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf? 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":"96c0303e04ab3e7024a89ff4a85ce2fb"} device-1 | {"level":"info","message":"GET /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf? 200 18ms","method":"GET","requestID":"96c0303e04ab3e7024a89ff4a85ce2fb","responseTime":18,"status":200,"url":"/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs","level":"info","message":"auth send jwt","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"f5e936104ba48f191c44a0cb2e8d4301","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":941,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":941,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.251881,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f5e936104ba48f191c44a0cb2e8d4301","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f5e936104ba48f191c44a0cb2e8d4301","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Attempting to run experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Attempting to book experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Successfully booked experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58dbbc00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58dbe310-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":942,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":942,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.942414,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":943,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58dbbc00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"58dbbc00-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":943,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.342158,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58dbe310-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"58dbe310-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.496551167Z"}]},"request_id":"6293275a-136a-44d0-b444-820bdb7fdb4e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.7852714} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"58dbbc00-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.540178093Z"}]},"request_id":"560d91e4-f374-444e-8512-7c8f1d72ab69","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.7866101} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"58dbe310-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58dbbc00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0? 200 14ms","method":"GET","requestID":"58dbbc00-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58dbe310-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf? 200 14ms","method":"GET","requestID":"58dbe310-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Setting up experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Successfully set up experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58e64350-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58e66a60-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Successfully running experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58e6b880-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":944,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":944,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.790515,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":945,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58e64350-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"58e64350-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":945,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.037738,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58e66a60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"58e66a60-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36958","level":"info","msg":"Received request.","req_id":946,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9942cc6e-ecae-4e26-af25-a1de13e67b6b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.8565013} authorization-1 | {"client_addr":"127.0.0.1:36958","level":"info","msg":"Sent response.","req_id":946,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.454257,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.496551167Z"}]},"request_id":"6b2eaa1e-b109-4d09-b8ef-1adbe2c5ae6a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.8575163} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58e6b880-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","object_type":"device","rebac_allow":false,"scope_allow":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":"58e6b880-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"58e64350-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.540178093Z"}]},"request_id":"c2ae727f-475b-49cd-8f5d-43aa63d63101","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.858846} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"58e66a60-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58e6b880-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/signaling 200 18ms","method":"POST","requestID":"58e6b880-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58e64350-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0? 200 22ms","method":"GET","requestID":"58e64350-848f-11ef-9233-95baf63f17e0","responseTime":22,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58e66a60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf? 200 22ms","method":"GET","requestID":"58e66a60-848f-11ef-9233-95baf63f17e0","responseTime":22,"status":200,"url":"/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58e9c5c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58ea13e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc51a729b-c400-4935-aa73-7bf5e88bf5c4#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc51a729b-c400-4935-aa73-7bf5e88bf5c4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"78fd6c21-b8b7-485d-9095-6d8c465a300b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.8709173} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"218cbbb4-600a-44c0-b073-9938d223cd39","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.8712318} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"f5e936104ba48f191c44a0cb2e8d4301","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b7a93c74-b9e5-4fae-8d63-aafd285b79bc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.8750272} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":947,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":947,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.925283,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":948,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58e9c5c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","object_type":"device","rebac_allow":false,"scope_allow":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":"58e9c5c0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5b81c26d-228b-49bf-9ff2-9b2da0000ab6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.8787422} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":948,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.859482,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58ea13e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","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":"58e9c5c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"58ea13e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf/signaling 200 13ms","method":"POST","requestID":"58e9c5c0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} gateway-1 | {"time_local":"07/Oct/2024:09:34:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} experiment-1 | {"level":"info","message":"POST /experiments? 201 148ms","method":"POST","requestID":"f5e936104ba48f191c44a0cb2e8d4301","responseTime":148,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58ea13e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/signaling 200 14ms","method":"POST","requestID":"58ea13e0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs","level":"info","message":"auth send jwt","requestID":"83c4b6d03cb11e74abd29d18fa3323f1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58ec84e0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"83c4b6d03cb11e74abd29d18fa3323f1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"83c4b6d03cb11e74abd29d18fa3323f1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":949,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":950,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":950,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.586087,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"83c4b6d03cb11e74abd29d18fa3323f1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"83c4b6d03cb11e74abd29d18fa3323f1","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"724c866d-4b0f-4508-9ff5-5e800cde8c37","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.8914611} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":949,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.323109,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58ec84e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","object_type":"device","rebac_allow":false,"scope_allow":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":"58ec84e0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.496551167Z"}]},"request_id":"3300d90c-3731-400b-a28a-17657afe9890","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.895161} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58ec84e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf/signaling 200 9ms","method":"POST","requestID":"58ec84e0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"83c4b6d03cb11e74abd29d18fa3323f1","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58ee59a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58ee59a1-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"83c4b6d03cb11e74abd29d18fa3323f1"} gateway-1 | {"time_local":"07/Oct/2024:09:34:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0? 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":"83c4b6d03cb11e74abd29d18fa3323f1"} device-1 | {"level":"info","message":"GET /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0? 200 13ms","method":"GET","requestID":"83c4b6d03cb11e74abd29d18fa3323f1","responseTime":13,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":951,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":951,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.790708,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":952,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58ee59a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"58ee59a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":952,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.709564,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58ee59a1-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"58ee59a1-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs","level":"info","message":"auth send jwt","requestID":"e6872e784ec6de501ebe612ee5b010bc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e6872e784ec6de501ebe612ee5b010bc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e6872e784ec6de501ebe612ee5b010bc"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.496551167Z"}]},"request_id":"603d2b50-2096-4f90-933e-932fc4bafc61","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.9064016} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"58ee59a0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.540178093Z"}]},"request_id":"a5a7fea8-608a-4b29-ade4-712d76fd90b1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.9076169} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58ee59a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"58ee59a1-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":953,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":953,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.620894,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} device-1 | {"level":"info","message":"GET /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0? 200 12ms","method":"GET","requestID":"58ee59a0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e6872e784ec6de501ebe612ee5b010bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e6872e784ec6de501ebe612ee5b010bc","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58ee59a1-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf? 200 15ms","method":"GET","requestID":"58ee59a1-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:25.540178093Z"}]},"request_id":"6543dfc1-1d95-4242-ab21-8a890ceecdc9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.9148922} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Building connection plan","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} 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":"27a8c902-e5a2-4977-ad2f-591674e3a8b6"},{"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":"9ddb31ef-18ce-443a-bc12-de3756949ab8"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"524a9ea9-b94a-4a53-bfc5-b7c932736db3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e6872e784ec6de501ebe612ee5b010bc","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"58f118c0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"58f118c0-848f-11ef-8885-7d835fc08c91"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e6872e784ec6de501ebe612ee5b010bc"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"58f118c0-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"07/Oct/2024:09:34:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf? 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":"e6872e784ec6de501ebe612ee5b010bc"} device-1 | {"level":"info","message":"GET /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf? 200 11ms","method":"GET","requestID":"e6872e784ec6de501ebe612ee5b010bc","responseTime":12,"status":200,"url":"/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/f735efae-23ff-4c89-a45f-7ca876894f2c?id=b123e362-81de-4c66-888f-1735107f1e67","ws://localhost/rooms/f735efae-23ff-4c89-a45f-7ca876894f2c?id=79a80d18-14bb-4600-9162-d5a4ab9fdaf4"]},"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/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0"},{"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/7813c47a-dc44-4a8e-ab76-050290aa95cf"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"58f18df0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":954,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":954,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.887094,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58f18df0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293667,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2N30.KqCCFMMKd0j-LC9oA2XQ8IM2v6LUO8IzYjNMQipPxCs"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"58f18df0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"3976875c-a18f-47c0-bf0a-9106fc9f18a3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.9301455} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1cd97622-9a1c-4fb5-be3f-1f1762c11a9e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.9304218} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"58f18df0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"58f18df0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"58f18df0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c'","requestID":"58f18df0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c'","requestID":"58f18df0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"58f18df0-848f-11ef-9233-95baf63f17e0"} 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":"58f18df0-848f-11ef-9233-95baf63f17e0","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":"58f18df0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"58f69700-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"79a80d18-14bb-4600-9162-d5a4ab9fdaf4\" in room \"http://localhost/rooms/f735efae-23ff-4c89-a45f-7ca876894f2c\"","requestID":"58f69700-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"58f69700-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4e8210575edbd21a6ca3064c2e7db670","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4e8210575edbd21a6ca3064c2e7db670","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"58f70c30-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b123e362-81de-4c66-888f-1735107f1e67\" in room \"http://localhost/rooms/f735efae-23ff-4c89-a45f-7ca876894f2c\"","requestID":"58f70c30-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"58f70c30-848f-11ef-8885-7d835fc08c91"} 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/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0"},{"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/7813c47a-dc44-4a8e-ab76-050290aa95cf"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c"}}},"level":"info","message":"received a callback","requestID":"4e8210575edbd21a6ca3064c2e7db670"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"79a80d18-14bb-4600-9162-d5a4ab9fdaf4\" in room \"http://localhost/rooms/f735efae-23ff-4c89-a45f-7ca876894f2c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"79a80d18-14bb-4600-9162-d5a4ab9fdaf4\" in room \"http://localhost/rooms/f735efae-23ff-4c89-a45f-7ca876894f2c\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"79a80d18-14bb-4600-9162-d5a4ab9fdaf4\" in room \"http://localhost/rooms/f735efae-23ff-4c89-a45f-7ca876894f2c\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"79a80d18-14bb-4600-9162-d5a4ab9fdaf4\" in room \"http://localhost/rooms/f735efae-23ff-4c89-a45f-7ca876894f2c\""} device-1 | {"data":{"peerconnection":"8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"4e8210575edbd21a6ca3064c2e7db670","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch","requestID":"4e8210575edbd21a6ca3064c2e7db670"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f5e936104ba48f191c44a0cb2e8d4301"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58fa4080-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":955,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a30d8d89-1a38-498e-bbfb-65e49842b6a4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.9808912} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":955,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.526536,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58fa4080-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"58fa4080-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"data":{"peerconnection":"8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58fa4080-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/signaling 200 9ms","method":"POST","requestID":"58fa4080-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"58fbee30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":956,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0160cea6-0904-4628-9b78-dec22ea2a81d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293667.9908996} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":956,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.122416,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58fbee30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","object_type":"device","rebac_allow":false,"scope_allow":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":"58fbee30-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"58fbee30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf/signaling 200 9ms","method":"POST","requestID":"58fbee30-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f819162f8d2c56aad0c015fe1152a586","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f819162f8d2c56aad0c015fe1152a586","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/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0"},{"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/7813c47a-dc44-4a8e-ab76-050290aa95cf"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c"}}},"level":"info","message":"received a callback","requestID":"f819162f8d2c56aad0c015fe1152a586"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"58fe3820-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":957,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7641eba3-b17e-46cd-baff-11861513e062","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.0062602} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":957,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.244094,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58fe3820-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c","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":"58fe3820-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"58fe3820-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c 200 8ms","method":"GET","requestID":"58fe3820-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"f819162f8d2c56aad0c015fe1152a586","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.030","http_referrer":"","http_user_agent":"node-fetch","requestID":"f819162f8d2c56aad0c015fe1152a586"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5901e1a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":958,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4f701f50-3ae4-4d3b-a86c-cabdc2f23bcf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.0302017} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":958,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.390148,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5901e1a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","object_type":"device","rebac_allow":false,"scope_allow":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":"5901e1a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5901e1a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/signaling 200 7ms","method":"POST","requestID":"5901e1a0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59034130-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":959,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5730307e-c48a-4671-a9d3-d0883ecfcbcb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.04027} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":959,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.310443,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"59034130-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"59034130-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59034130-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf/signaling 200 9ms","method":"POST","requestID":"59034130-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2OH0.KNZih7BD-2ClsWrJiVr4GvHRwQrlraXqJ8I2UvYdexY","level":"info","message":"auth send jwt","requestID":"f0a82e10f2b4de202f121850fe56bd30"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f0a82e10f2b4de202f121850fe56bd30","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4","requestID":"f0a82e10f2b4de202f121850fe56bd30"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":960,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":960,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.707172,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f0a82e10f2b4de202f121850fe56bd30","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293668,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2OH0.KNZih7BD-2ClsWrJiVr4GvHRwQrlraXqJ8I2UvYdexY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f0a82e10f2b4de202f121850fe56bd30","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4","requestID":"f0a82e10f2b4de202f121850fe56bd30"} gateway-1 | {"time_local":"07/Oct/2024:09:34:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f0a82e10f2b4de202f121850fe56bd30"} experiment-1 | {"level":"info","message":"GET /experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4 200 9ms","method":"GET","requestID":"f0a82e10f2b4de202f121850fe56bd30","responseTime":9,"status":200,"url":"/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2OH0.KNZih7BD-2ClsWrJiVr4GvHRwQrlraXqJ8I2UvYdexY","level":"info","message":"auth send jwt","requestID":"0b0f154c921b3bfcfe8dff15ee272e92"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0b0f154c921b3bfcfe8dff15ee272e92","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4","requestID":"0b0f154c921b3bfcfe8dff15ee272e92"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":961,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":961,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.679635,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0b0f154c921b3bfcfe8dff15ee272e92","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293668,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2OH0.KNZih7BD-2ClsWrJiVr4GvHRwQrlraXqJ8I2UvYdexY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0b0f154c921b3bfcfe8dff15ee272e92","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Attempting to finish experiment","requestID":"0b0f154c921b3bfcfe8dff15ee272e92"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"590b3070-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":962,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":962,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.712682,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"590b3070-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293668,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2OH0.KNZih7BD-2ClsWrJiVr4GvHRwQrlraXqJ8I2UvYdexY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"590b3070-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:34:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f735efae-23ff-4c89-a45f-7ca876894f2c?id=79a80d18-14bb-4600-9162-d5a4ab9fdaf4 HTTP/1.1","status": "101","body_bytes_sent":"436","request_time":"0.149","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"0538f707ab07aedc20de06f45c5e68fe"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"79a80d18-14bb-4600-9162-d5a4ab9fdaf4\" in room \"http://localhost/rooms/f735efae-23ff-4c89-a45f-7ca876894f2c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"79a80d18-14bb-4600-9162-d5a4ab9fdaf4\" from room \"http://localhost/rooms/f735efae-23ff-4c89-a45f-7ca876894f2c\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c","device":"ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"07/Oct/2024:09:34:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/f735efae-23ff-4c89-a45f-7ca876894f2c?id=b123e362-81de-4c66-888f-1735107f1e67 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.147","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"dac37b1a2cb33a7a008d5d8f77c3523d"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b123e362-81de-4c66-888f-1735107f1e67\" in room \"http://localhost/rooms/f735efae-23ff-4c89-a45f-7ca876894f2c\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b123e362-81de-4c66-888f-1735107f1e67\" from room \"http://localhost/rooms/f735efae-23ff-4c89-a45f-7ca876894f2c\""} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"0fb2fc04-2596-414b-a101-37494cb10a46","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.1040056} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"afc9615f-51ea-4f22-976b-e61f67825926","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.1042082} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8bbcc00618d8e01cdaf50435da208964","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8bbcc00618d8e01cdaf50435da208964","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/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0"},{"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/7813c47a-dc44-4a8e-ab76-050290aa95cf"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c"}}},"level":"info","message":"received a callback","requestID":"8bbcc00618d8e01cdaf50435da208964"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0a51059615692d9906c25701b775da0b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"590b3070-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0a51059615692d9906c25701b775da0b","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/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0"},{"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/7813c47a-dc44-4a8e-ab76-050290aa95cf"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c"}}},"level":"info","message":"received a callback","requestID":"0a51059615692d9906c25701b775da0b"} device-1 | {"data":{"peerconnection":"8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"590b3070-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c 204 38ms","method":"DELETE","requestID":"590b3070-848f-11ef-9233-95baf63f17e0","responseTime":38,"status":204,"url":"/peerconnections/8634d10d-b0ff-4de7-8f4d-aaacf7c44f1c"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"},"level":"info","message":"Successfully finished experiment","requestID":"0b0f154c921b3bfcfe8dff15ee272e92"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"59131fb0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":963,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"416b2895-5d31-4bbe-a041-9916cbdfbb2b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.1448708} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":963,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.6159,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"59131fb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"59131fb0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"59131fb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/signaling 200 10ms","method":"POST","requestID":"59131fb0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5914f470-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc51a729b-c400-4935-aa73-7bf5e88bf5c4': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc51a729b-c400-4935-aa73-7bf5e88bf5c4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"18a95bb4-c36d-4c88-943d-e60087b80fc6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.1537433} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"76d67d90-ab63-4061-8480-164b437b1dc1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.1540933} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":964,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"0b0f154c921b3bfcfe8dff15ee272e92","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7813c47a-dc44-4a8e-ab76-050290aa95cf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0dfd0e63-2756-4a9d-a7fb-170f5e7cac98","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.156075} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":964,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.130018,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5914f470-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf","object_type":"device","rebac_allow":false,"scope_allow":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":"5914f470-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5914f470-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7813c47a-dc44-4a8e-ab76-050290aa95cf/signaling 200 9ms","method":"POST","requestID":"5914f470-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/7813c47a-dc44-4a8e-ab76-050290aa95cf/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4","requestID":"0b0f154c921b3bfcfe8dff15ee272e92"} gateway-1 | {"time_local":"07/Oct/2024:09:34:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0b0f154c921b3bfcfe8dff15ee272e92"} experiment-1 | {"level":"info","message":"DELETE /experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4 204 144ms","method":"DELETE","requestID":"0b0f154c921b3bfcfe8dff15ee272e92","responseTime":144,"status":204,"url":"/experiments/c51a729b-c400-4935-aa73-7bf5e88bf5c4"} gateway-1 | {"time_local":"07/Oct/2024:09:34:28 +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.138","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"c10947304888ea4a1762504504d65ac2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"8bbcc00618d8e01cdaf50435da208964","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"8bbcc00618d8e01cdaf50435da208964"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"0a51059615692d9906c25701b775da0b","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"0a51059615692d9906c25701b775da0b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2OH0.KNZih7BD-2ClsWrJiVr4GvHRwQrlraXqJ8I2UvYdexY","level":"info","message":"auth send jwt","requestID":"ef7fe6697c9dab40196109ba6fb745de"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ef7fe6697c9dab40196109ba6fb745de","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ef7fe6697c9dab40196109ba6fb745de"} gateway-1 | {"time_local":"07/Oct/2024:09:34:28 +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.641","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"8dd39878e9b985a3036d4cbde65d78c0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":965,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":965,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.940029,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ef7fe6697c9dab40196109ba6fb745de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293668,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2OH0.KNZih7BD-2ClsWrJiVr4GvHRwQrlraXqJ8I2UvYdexY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ef7fe6697c9dab40196109ba6fb745de","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/7813c47a-dc44-4a8e-ab76-050290aa95cf' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a10ac653-8ea3-4d7a-9868-c0d87b31ea83","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.2489488} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ef7fe6697c9dab40196109ba6fb745de","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/ffa18ae6-83d6-4f47-a33f-c14b7ead5ec0' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"433073f9-7107-42cb-b80c-2c28f04642a5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.2537036} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ef7fe6697c9dab40196109ba6fb745de","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"0d4cec5b-c3f8-48c8-9414-65818309cb8b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.2648191} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02e9a0a9-7565-4b46-a870-864bb968e104","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.265062} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"ef7fe6697c9dab40196109ba6fb745de","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.264791413Z"}]},"request_id":"0f9a8f1a-2349-4fce-ae68-88bf835ea202","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.2691584} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ef7fe6697c9dab40196109ba6fb745de","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ef7fe6697c9dab40196109ba6fb745de"} gateway-1 | {"time_local":"07/Oct/2024:09:34:28 +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":"ef7fe6697c9dab40196109ba6fb745de"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"ef7fe6697c9dab40196109ba6fb745de","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2OH0.KNZih7BD-2ClsWrJiVr4GvHRwQrlraXqJ8I2UvYdexY","level":"info","message":"auth send jwt","requestID":"b86bda50ad328d28866027c431ae89d9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b86bda50ad328d28866027c431ae89d9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"b86bda50ad328d28866027c431ae89d9"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":966,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":966,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.736611,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b86bda50ad328d28866027c431ae89d9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293668,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2OH0.KNZih7BD-2ClsWrJiVr4GvHRwQrlraXqJ8I2UvYdexY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b86bda50ad328d28866027c431ae89d9","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"3cc7de59-e7ce-4587-8fe4-75b6cb9c2320","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.2970114} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b86bda50ad328d28866027c431ae89d9","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"deb8915f-55cf-4547-a540-bd9385920c18","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.3012676} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"b86bda50ad328d28866027c431ae89d9","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"1967aea0-e700-4a1f-981f-13fd7b1d69ad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.3120549} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dc17de7f-5341-4a80-8b3d-55723377dffb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.3121297} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"b86bda50ad328d28866027c431ae89d9","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.312019335Z"}]},"request_id":"c9ace081-6637-4a91-a8e8-3d5be533bcd9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.3160365} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b86bda50ad328d28866027c431ae89d9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"b86bda50ad328d28866027c431ae89d9"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"b86bda50ad328d28866027c431ae89d9","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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":"b86bda50ad328d28866027c431ae89d9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2OH0.KNZih7BD-2ClsWrJiVr4GvHRwQrlraXqJ8I2UvYdexY","level":"info","message":"auth send jwt","requestID":"31225eb40e99024486b169d5cbf9ddf0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"31225eb40e99024486b169d5cbf9ddf0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"31225eb40e99024486b169d5cbf9ddf0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":967,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":967,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.087571,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"31225eb40e99024486b169d5cbf9ddf0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293668,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2OH0.KNZih7BD-2ClsWrJiVr4GvHRwQrlraXqJ8I2UvYdexY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"31225eb40e99024486b169d5cbf9ddf0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.312019335Z"}]},"request_id":"b9dd2a3f-255a-4eb5-b162-3fe42b1a05f9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.7982414} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"31225eb40e99024486b169d5cbf9ddf0","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"285bc9b0-44bd-4c6a-a03e-024a5124cd5d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.8024437} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"31225eb40e99024486b169d5cbf9ddf0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.312019335Z"}]},"request_id":"8ddc6d5c-be80-4ff1-b703-dcab873da853","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293668.8153563} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"31225eb40e99024486b169d5cbf9ddf0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"31225eb40e99024486b169d5cbf9ddf0"} device-1 | {"level":"info","message":"PATCH /devices/c2f49ad9-511b-426b-a105-9c4c693e9474 200 28ms","method":"PATCH","requestID":"31225eb40e99024486b169d5cbf9ddf0","responseTime":28,"status":200,"url":"/devices/c2f49ad9-511b-426b-a105-9c4c693e9474"} gateway-1 | {"time_local":"07/Oct/2024:09:34:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/c2f49ad9-511b-426b-a105-9c4c693e9474 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"31225eb40e99024486b169d5cbf9ddf0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2OH0.KNZih7BD-2ClsWrJiVr4GvHRwQrlraXqJ8I2UvYdexY","level":"info","message":"auth send jwt","requestID":"7fda2e38a510faa0a31047d75c91f9c8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7fda2e38a510faa0a31047d75c91f9c8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7fda2e38a510faa0a31047d75c91f9c8"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":968,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":968,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.689208,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7fda2e38a510faa0a31047d75c91f9c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293668,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY2OH0.KNZih7BD-2ClsWrJiVr4GvHRwQrlraXqJ8I2UvYdexY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7fda2e38a510faa0a31047d75c91f9c8","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7fda2e38a510faa0a31047d75c91f9c8"} gateway-1 | {"time_local":"07/Oct/2024:09:34:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/c2f49ad9-511b-426b-a105-9c4c693e9474/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.9","requestID":"7fda2e38a510faa0a31047d75c91f9c8"} device-1 | {"level":"info","message":"POST /devices/c2f49ad9-511b-426b-a105-9c4c693e9474/websocket 200 14ms","method":"POST","requestID":"7fda2e38a510faa0a31047d75c91f9c8","responseTime":14,"status":200,"url":"/devices/c2f49ad9-511b-426b-a105-9c4c693e9474/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a51aaff35e7444f56da7f60f3b91ea0e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a51aaff35e7444f56da7f60f3b91ea0e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/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":"a51aaff35e7444f56da7f60f3b91ea0e"} device-1 | {"level":"info","message":"OPTIONS /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/websocket 200 1ms","method":"OPTIONS","requestID":"a51aaff35e7444f56da7f60f3b91ea0e","responseTime":1,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc","level":"info","message":"auth send jwt","requestID":"ea05618491afa36718d7eb9210bfdfcb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ea05618491afa36718d7eb9210bfdfcb","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ea05618491afa36718d7eb9210bfdfcb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":969,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":969,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.289178,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ea05618491afa36718d7eb9210bfdfcb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ea05618491afa36718d7eb9210bfdfcb","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ea05618491afa36718d7eb9210bfdfcb"} device-1 | {"level":"info","message":"POST /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/websocket 200 21ms","method":"POST","requestID":"ea05618491afa36718d7eb9210bfdfcb","responseTime":21,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/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":"ea05618491afa36718d7eb9210bfdfcb"} device-1 | {"level":"info","message":"device 'http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9f715254350662819868fb64b727a418","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9f715254350662819868fb64b727a418","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1? 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":"9f715254350662819868fb64b727a418"} device-1 | {"level":"info","message":"OPTIONS /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1? 200 1ms","method":"OPTIONS","requestID":"9f715254350662819868fb64b727a418","responseTime":1,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc","level":"info","message":"auth send jwt","requestID":"957a322fe19eedeaffaf4b74eca6a51e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"957a322fe19eedeaffaf4b74eca6a51e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"957a322fe19eedeaffaf4b74eca6a51e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":970,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":970,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.523326,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"957a322fe19eedeaffaf4b74eca6a51e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"957a322fe19eedeaffaf4b74eca6a51e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.264791413Z"}]},"request_id":"b12bd2e6-60d9-4dde-be09-6ed7b19d0c84","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.4218152} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"957a322fe19eedeaffaf4b74eca6a51e","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f369164a-7903-4e2b-8c35-08904f555125","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.428895} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"957a322fe19eedeaffaf4b74eca6a51e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.264791413Z"}]},"request_id":"996863dc-0649-4394-b3ab-9f6ef8a1fe81","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.4413607} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"957a322fe19eedeaffaf4b74eca6a51e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"957a322fe19eedeaffaf4b74eca6a51e"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1? 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":"957a322fe19eedeaffaf4b74eca6a51e"} device-1 | {"level":"info","message":"PATCH /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1? 200 38ms","method":"PATCH","requestID":"957a322fe19eedeaffaf4b74eca6a51e","responseTime":38,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc","level":"info","message":"auth send jwt","requestID":"fe837daf94d5e2b0865950d2085c9101"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fe837daf94d5e2b0865950d2085c9101","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fe837daf94d5e2b0865950d2085c9101"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":971,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":971,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.466744,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"fe837daf94d5e2b0865950d2085c9101","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"fe837daf94d5e2b0865950d2085c9101","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.264791413Z"}]},"request_id":"b84eadeb-da0a-493d-89e2-3c29d11abc2a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.4700618} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fe837daf94d5e2b0865950d2085c9101","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fe837daf94d5e2b0865950d2085c9101"} device-1 | {"level":"info","message":"GET /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1? 200 17ms","method":"GET","requestID":"fe837daf94d5e2b0865950d2085c9101","responseTime":17,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1? 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":"fe837daf94d5e2b0865950d2085c9101"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc","level":"info","message":"auth send jwt","requestID":"7d29eed7b271e1684399aaed15236c07"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7d29eed7b271e1684399aaed15236c07","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7d29eed7b271e1684399aaed15236c07"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":972,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":972,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.167902,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d29eed7b271e1684399aaed15236c07","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7d29eed7b271e1684399aaed15236c07","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.312019335Z"}]},"request_id":"42da36e7-331a-4dc2-b3c9-0fddb86eb23b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.4932337} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7d29eed7b271e1684399aaed15236c07","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7d29eed7b271e1684399aaed15236c07"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c2f49ad9-511b-426b-a105-9c4c693e9474? 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":"7d29eed7b271e1684399aaed15236c07"} device-1 | {"level":"info","message":"GET /devices/c2f49ad9-511b-426b-a105-9c4c693e9474? 200 17ms","method":"GET","requestID":"7d29eed7b271e1684399aaed15236c07","responseTime":17,"status":200,"url":"/devices/c2f49ad9-511b-426b-a105-9c4c693e9474?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc","level":"info","message":"auth send jwt","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"59d94bbb0c24613ceed680a1c7988d5a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":973,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":973,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.749024,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"59d94bbb0c24613ceed680a1c7988d5a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"59d94bbb0c24613ceed680a1c7988d5a","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Attempting to run experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Attempting to book experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Successfully booked experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5a832a70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5a837890-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":974,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":974,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.872055,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":975,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5a832a70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"5a832a70-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":975,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.46789,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5a837890-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"5a837890-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.264791413Z"}]},"request_id":"ad66f91e-135f-4e20-82dc-eb2ec94a4007","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.569562} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5a832a70-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.312019335Z"}]},"request_id":"1c6c4842-557d-4edf-9649-63d6151c478c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.5719337} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5a837890-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5a832a70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1? 200 27ms","method":"GET","requestID":"5a832a70-848f-11ef-9233-95baf63f17e0","responseTime":27,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5a837890-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/c2f49ad9-511b-426b-a105-9c4c693e9474? 200 27ms","method":"GET","requestID":"5a837890-848f-11ef-9233-95baf63f17e0","responseTime":27,"status":200,"url":"/devices/c2f49ad9-511b-426b-a105-9c4c693e9474?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Setting up experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Successfully locked booking for experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Attempting to update booking for experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Successfully updated booking for experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Successfully set up experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5a8f5f70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5a8fad90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5a8ffbb0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Successfully running experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":976,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":976,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.860339,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5a8f5f70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"5a8f5f70-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":977,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":977,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.926567,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5a8fad90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 13ms","method":"POST","requestID":"5a8fad90-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":978,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":978,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.561635,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60153a67-2753-4f2e-a1cb-6973da8f1ae1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.6483924} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5a8ffbb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","object_type":"device","rebac_allow":false,"scope_allow":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":"5a8ffbb0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.264791413Z"}]},"request_id":"b1fea188-21d7-4f70-a3aa-d3fbc2c9d86d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.652046} authorization-1 | {"level":"info","message":"POST /relations/query 200 10ms","method":"POST","requestID":"5a8f5f70-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5a8ffbb0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.312019335Z"}]},"request_id":"2ca4a9b1-905b-4957-96b9-3d5be4335e5a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.6574323} device-1 | {"level":"info","message":"POST /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/signaling 200 24ms","method":"POST","requestID":"5a8ffbb0-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"5a8fad90-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5a946880-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5a8f5f70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1? 200 39ms","method":"GET","requestID":"5a8f5f70-848f-11ef-9233-95baf63f17e0","responseTime":39,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5a8fad90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/c2f49ad9-511b-426b-a105-9c4c693e9474? 200 39ms","method":"GET","requestID":"5a8fad90-848f-11ef-9233-95baf63f17e0","responseTime":39,"status":200,"url":"/devices/c2f49ad9-511b-426b-a105-9c4c693e9474?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":979,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"277572d2-fc97-4e93-85f1-5db37e2cfd99","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.6716359} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2149039c-f78c-4f89-b8be-1304fa886e58#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2149039c-f78c-4f89-b8be-1304fa886e58","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"67bd5f11-ae46-4e3b-8810-88439d31a146","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.6725962} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":979,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.81511,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5a961630-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5a946880-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","object_type":"device","rebac_allow":false,"scope_allow":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":"5a946880-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"25072406-2ae6-438d-b60b-657aadc65d99","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.6735954} authorization-1 | {"level":"info","message":"POST /relations/update 200 33ms","method":"POST","requestID":"59d94bbb0c24613ceed680a1c7988d5a","responseTime":33,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":980,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5a946880-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/c2f49ad9-511b-426b-a105-9c4c693e9474/signaling 200 15ms","method":"POST","requestID":"5a946880-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/c2f49ad9-511b-426b-a105-9c4c693e9474/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"203350f1-65a7-42d8-b044-9e596bcf14dd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.6815135} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":980,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.48376,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5a961630-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","object_type":"device","rebac_allow":false,"scope_allow":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":"5a961630-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.186","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 179ms","method":"POST","requestID":"59d94bbb0c24613ceed680a1c7988d5a","responseTime":179,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5a961630-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/signaling 200 12ms","method":"POST","requestID":"5a961630-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5a983910-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc","level":"info","message":"auth send jwt","requestID":"b426c5e4b79ab529af238b5f48e680dc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b426c5e4b79ab529af238b5f48e680dc","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":981,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b426c5e4b79ab529af238b5f48e680dc"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a41ed3f3-c593-48aa-9156-406b0e202de0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.696572} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":982,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":981,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.550327,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5a983910-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","object_type":"device","rebac_allow":false,"scope_allow":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":"5a983910-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":982,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.170876,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b426c5e4b79ab529af238b5f48e680dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b426c5e4b79ab529af238b5f48e680dc","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5a983910-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/c2f49ad9-511b-426b-a105-9c4c693e9474/signaling 200 14ms","method":"POST","requestID":"5a983910-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/c2f49ad9-511b-426b-a105-9c4c693e9474/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.264791413Z"}]},"request_id":"03bd522c-6daf-44cd-9d41-078547341c47","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.7036006} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b426c5e4b79ab529af238b5f48e680dc","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5a9ad120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5a9af830-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b426c5e4b79ab529af238b5f48e680dc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":983,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":983,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.910451,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":984,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1? 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":"b426c5e4b79ab529af238b5f48e680dc"} device-1 | {"level":"info","message":"GET /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1? 200 17ms","method":"GET","requestID":"b426c5e4b79ab529af238b5f48e680dc","responseTime":17,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5a9ad120-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5a9ad120-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":984,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.777745,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5a9af830-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5a9af830-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc","level":"info","message":"auth send jwt","requestID":"ed95cdc02ab8f17251cbf6f13ec07d6c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.264791413Z"}]},"request_id":"95d2c6c0-4579-4e7d-8d90-231e2496dad5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.7143037} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ed95cdc02ab8f17251cbf6f13ec07d6c","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5a9ad120-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ed95cdc02ab8f17251cbf6f13ec07d6c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.312019335Z"}]},"request_id":"1887f5d8-fc90-40d5-bedf-86cc8d505d78","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.715553} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5a9af830-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":985,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":985,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.850502,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ed95cdc02ab8f17251cbf6f13ec07d6c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ed95cdc02ab8f17251cbf6f13ec07d6c","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5a9ad120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1? 200 16ms","method":"GET","requestID":"5a9ad120-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5a9af830-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:28.312019335Z"}]},"request_id":"32ef74ee-4bb6-434a-9248-6437960595da","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.722863} device-1 | {"level":"info","message":"GET /devices/c2f49ad9-511b-426b-a105-9c4c693e9474? 200 16ms","method":"GET","requestID":"5a9af830-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/c2f49ad9-511b-426b-a105-9c4c693e9474?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ed95cdc02ab8f17251cbf6f13ec07d6c","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Building connection plan","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} 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":"d3496344-f511-4e68-ab29-f46dccbcf89b"},{"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":"b1b6da18-9eb2-4189-ad64-457c19c2f395"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"1be25cc4-0eb1-4750-a2d9-6c6f6ba01f59"}]},"level":"info","message":"Built pairwise service configurations","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"5a9dde60-848f-11ef-8885-7d835fc08c91"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ed95cdc02ab8f17251cbf6f13ec07d6c"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"5a9dde60-848f-11ef-8885-7d835fc08c91"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/c2f49ad9-511b-426b-a105-9c4c693e9474? 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":"ed95cdc02ab8f17251cbf6f13ec07d6c"} device-1 | {"level":"info","message":"GET /devices/c2f49ad9-511b-426b-a105-9c4c693e9474? 200 11ms","method":"GET","requestID":"ed95cdc02ab8f17251cbf6f13ec07d6c","responseTime":11,"status":200,"url":"/devices/c2f49ad9-511b-426b-a105-9c4c693e9474?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"5a9dde60-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef?id=d1c3f99e-8c12-4c41-9745-ea3554f2f16b","ws://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef?id=7bd3d60d-852c-446b-937a-c68cab2b3b03"]},"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/c2f49ad9-511b-426b-a105-9c4c693e9474"},{"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/60fab421-8daa-4856-bfd2-2310e01a9cd1"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5a9ea1b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":986,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":986,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.795562,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5a9ea1b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5a9ea1b0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"68018154-19c3-4ad1-9913-f1321b54409e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.7442412} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"543011c0-375d-4ba4-810e-f18878ff885a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.7448294} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"5a9ea1b0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5a9ea1b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5a9ea1b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5'","requestID":"5a9ea1b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5'","requestID":"5a9ea1b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5a9ea1b0-848f-11ef-9233-95baf63f17e0"} 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":"5a9ea1b0-848f-11ef-9233-95baf63f17e0","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":"5a9ea1b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c4f2abca-db48-4726-b4cb-ae16b776ada5","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5aa49520-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d1c3f99e-8c12-4c41-9745-ea3554f2f16b\" in room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\"","requestID":"5aa49520-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5aa49520-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f15bef55e391ea3ba3f3aea593b7dfe2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"f15bef55e391ea3ba3f3aea593b7dfe2","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5aa50a50-848f-11ef-8885-7d835fc08c91"} 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/c2f49ad9-511b-426b-a105-9c4c693e9474"},{"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/60fab421-8daa-4856-bfd2-2310e01a9cd1"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5"}}},"level":"info","message":"received a callback","requestID":"f15bef55e391ea3ba3f3aea593b7dfe2"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7bd3d60d-852c-446b-937a-c68cab2b3b03\" in room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\"","requestID":"5aa50a50-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5aa50a50-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d1c3f99e-8c12-4c41-9745-ea3554f2f16b\" in room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d1c3f99e-8c12-4c41-9745-ea3554f2f16b\" in room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d1c3f99e-8c12-4c41-9745-ea3554f2f16b\" in room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d1c3f99e-8c12-4c41-9745-ea3554f2f16b\" in room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d1c3f99e-8c12-4c41-9745-ea3554f2f16b\" in room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d1c3f99e-8c12-4c41-9745-ea3554f2f16b\" in room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"d1c3f99e-8c12-4c41-9745-ea3554f2f16b\" in room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"d1c3f99e-8c12-4c41-9745-ea3554f2f16b\" in room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c4f2abca-db48-4726-b4cb-ae16b776ada5","statusDeviceA":"connected","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0166838ccca7d17b5f377bbe16c6953d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0166838ccca7d17b5f377bbe16c6953d","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"f15bef55e391ea3ba3f3aea593b7dfe2","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"f15bef55e391ea3ba3f3aea593b7dfe2"} 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/c2f49ad9-511b-426b-a105-9c4c693e9474"},{"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/60fab421-8daa-4856-bfd2-2310e01a9cd1"}],"status":"new","type":"websocket","url":"http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5"}}},"level":"info","message":"received a callback","requestID":"0166838ccca7d17b5f377bbe16c6953d"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c4f2abca-db48-4726-b4cb-ae16b776ada5","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2a461b8afb0ff6655d6f149cdb76921a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2a461b8afb0ff6655d6f149cdb76921a","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 16ms","method":"POST","requestID":"0166838ccca7d17b5f377bbe16c6953d","responseTime":16,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch","requestID":"0166838ccca7d17b5f377bbe16c6953d"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"59d94bbb0c24613ceed680a1c7988d5a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5aa9c540-848f-11ef-9233-95baf63f17e0"} 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/c2f49ad9-511b-426b-a105-9c4c693e9474"},{"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/60fab421-8daa-4856-bfd2-2310e01a9cd1"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5"}}},"level":"info","message":"received a callback","requestID":"2a461b8afb0ff6655d6f149cdb76921a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":987,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"2a461b8afb0ff6655d6f149cdb76921a","responseTime":4,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9cde9b24-8a95-452a-b56c-cdd7001dc801","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.8083262} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"2a461b8afb0ff6655d6f149cdb76921a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":987,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.526819,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5aa9c540-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5aa9c540-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c4f2abca-db48-4726-b4cb-ae16b776ada5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9f97db919d32c94b415777357f994611","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5aa9c540-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/signaling 200 9ms","method":"POST","requestID":"5aa9c540-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9f97db919d32c94b415777357f994611","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5aab72f0-848f-11ef-9233-95baf63f17e0"} 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/c2f49ad9-511b-426b-a105-9c4c693e9474"},{"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/60fab421-8daa-4856-bfd2-2310e01a9cd1"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5"}}},"level":"info","message":"received a callback","requestID":"9f97db919d32c94b415777357f994611"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":988,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ad7005c9-d29b-411b-b24e-939254912854","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.8201435} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":988,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.607134,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5aac5d50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5aab72f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5aab72f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":989,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5aab72f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/c2f49ad9-511b-426b-a105-9c4c693e9474/signaling 200 9ms","method":"POST","requestID":"5aab72f0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/c2f49ad9-511b-426b-a105-9c4c693e9474/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc4f2abca-db48-4726-b4cb-ae16b776ada5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9fce951c-eb12-4a10-b754-61309abbe003","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.824498} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":989,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.337379,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5aac5d50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5","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":"5aac5d50-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5aac5d50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5 200 6ms","method":"GET","requestID":"5aac5d50-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"9f97db919d32c94b415777357f994611","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"9f97db919d32c94b415777357f994611"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5aafdfc0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":990,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"43ab4b2c-1750-40ca-a931-13ade3b89974","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.8482583} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":990,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.362409,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5aafdfc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","object_type":"device","rebac_allow":false,"scope_allow":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":"5aafdfc0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5aafdfc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/c2f49ad9-511b-426b-a105-9c4c693e9474/signaling 200 7ms","method":"POST","requestID":"5aafdfc0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/c2f49ad9-511b-426b-a105-9c4c693e9474/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ab13f50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":991,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d3894afd-e434-4aad-b829-bb21130f4420","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.8584914} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":991,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.115918,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ab13f50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","object_type":"device","rebac_allow":false,"scope_allow":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":"5ab13f50-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ab13f50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/signaling 200 9ms","method":"POST","requestID":"5ab13f50-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc","level":"info","message":"auth send jwt","requestID":"b57dce2aa072b351c48449ab28f2b08a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b57dce2aa072b351c48449ab28f2b08a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/2149039c-f78c-4f89-b8be-1304fa886e58","requestID":"b57dce2aa072b351c48449ab28f2b08a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":992,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":992,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.889239,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b57dce2aa072b351c48449ab28f2b08a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b57dce2aa072b351c48449ab28f2b08a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/2149039c-f78c-4f89-b8be-1304fa886e58","requestID":"b57dce2aa072b351c48449ab28f2b08a"} experiment-1 | {"level":"info","message":"GET /experiments/2149039c-f78c-4f89-b8be-1304fa886e58 200 9ms","method":"GET","requestID":"b57dce2aa072b351c48449ab28f2b08a","responseTime":9,"status":200,"url":"/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/2149039c-f78c-4f89-b8be-1304fa886e58 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b57dce2aa072b351c48449ab28f2b08a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc","level":"info","message":"auth send jwt","requestID":"08f0a93f4d6b208ed815fc29710cb130"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"08f0a93f4d6b208ed815fc29710cb130","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/2149039c-f78c-4f89-b8be-1304fa886e58","requestID":"08f0a93f4d6b208ed815fc29710cb130"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":993,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":993,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.736661,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"08f0a93f4d6b208ed815fc29710cb130","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"08f0a93f4d6b208ed815fc29710cb130","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Attempting to finish experiment","requestID":"08f0a93f4d6b208ed815fc29710cb130"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5ab9f1e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":994,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":994,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.166413,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ab9f1e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293670,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MH0.3wfz3M8lX5qwIakotQWHop7CK-GQMmivzFIx7T16-xc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5ab9f1e0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef?id=d1c3f99e-8c12-4c41-9745-ea3554f2f16b HTTP/1.1","status": "101","body_bytes_sent":"872","request_time":"0.151","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"3ef53781fd587a5e0b3b2d270f4fae73"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"d1c3f99e-8c12-4c41-9745-ea3554f2f16b\" in room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"d1c3f99e-8c12-4c41-9745-ea3554f2f16b\" from room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c4f2abca-db48-4726-b4cb-ae16b776ada5","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"07/Oct/2024:09:34:30 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef?id=7bd3d60d-852c-446b-937a-c68cab2b3b03 HTTP/1.1","status": "101","body_bytes_sent":"2","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":"375c9f32c97fe040bc7fc392de62c94c"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"7bd3d60d-852c-446b-937a-c68cab2b3b03\" in room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"7bd3d60d-852c-446b-937a-c68cab2b3b03\" from room \"http://localhost/rooms/c61dfa48-a553-4dfc-b490-72394c30f8ef\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5","device":"60fab421-8daa-4856-bfd2-2310e01a9cd1","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7ac7262034ba4f15950e1ce076378a79","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7ac7262034ba4f15950e1ce076378a79","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc4f2abca-db48-4726-b4cb-ae16b776ada5': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc4f2abca-db48-4726-b4cb-ae16b776ada5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"784556e3-6524-4f5f-9913-068236c2b93b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.9255638} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be6ae151-9d77-4b78-b235-f22430a84716","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.9259317} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"37c8d5eb6efebfd80dd18760895b7878","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/c2f49ad9-511b-426b-a105-9c4c693e9474"},{"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/60fab421-8daa-4856-bfd2-2310e01a9cd1"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5"}}},"level":"info","message":"received a callback","requestID":"7ac7262034ba4f15950e1ce076378a79"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"37c8d5eb6efebfd80dd18760895b7878","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/c2f49ad9-511b-426b-a105-9c4c693e9474"},{"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/60fab421-8daa-4856-bfd2-2310e01a9cd1"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5"}}},"level":"info","message":"received a callback","requestID":"37c8d5eb6efebfd80dd18760895b7878"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"5ab9f1e0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5ab9f1e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5 204 32ms","method":"DELETE","requestID":"5ab9f1e0-848f-11ef-9233-95baf63f17e0","responseTime":32,"status":204,"url":"/peerconnections/c4f2abca-db48-4726-b4cb-ae16b776ada5"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"},"level":"info","message":"Successfully finished experiment","requestID":"08f0a93f4d6b208ed815fc29710cb130"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ac1e120-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":995,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fc2f49ad9-511b-426b-a105-9c4c693e9474","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"26ae0e58-3029-4b17-aecd-b916453fa6a7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.9679213} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":995,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.402942,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ac1e120-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/c2f49ad9-511b-426b-a105-9c4c693e9474","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5ac1e120-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ac1e120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/c2f49ad9-511b-426b-a105-9c4c693e9474/signaling 200 10ms","method":"POST","requestID":"5ac1e120-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/c2f49ad9-511b-426b-a105-9c4c693e9474/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2149039c-f78c-4f89-b8be-1304fa886e58': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F2149039c-f78c-4f89-b8be-1304fa886e58","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"5ff0500a-9c4a-407e-8dd4-2c89a12d0350","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.9742799} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ac3dcf0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8f4ba4d8-6e40-4eaf-bed2-a88b3304ac66","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.9746704} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"08f0a93f4d6b208ed815fc29710cb130","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":996,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F60fab421-8daa-4856-bfd2-2310e01a9cd1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9dbe94ad-9741-449f-bfab-b7aaa3fe55af","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293670.980361} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":996,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.229525,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:30Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ac3dcf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1","object_type":"device","rebac_allow":false,"scope_allow":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":"5ac3dcf0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ac3dcf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/signaling 200 10ms","method":"POST","requestID":"5ac3dcf0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/2149039c-f78c-4f89-b8be-1304fa886e58","requestID":"08f0a93f4d6b208ed815fc29710cb130"} gateway-1 | {"time_local":"07/Oct/2024:09:34:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/2149039c-f78c-4f89-b8be-1304fa886e58 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":"08f0a93f4d6b208ed815fc29710cb130"} experiment-1 | {"level":"info","message":"DELETE /experiments/2149039c-f78c-4f89-b8be-1304fa886e58 204 131ms","method":"DELETE","requestID":"08f0a93f4d6b208ed815fc29710cb130","responseTime":131,"status":204,"url":"/experiments/2149039c-f78c-4f89-b8be-1304fa886e58"} gateway-1 | {"time_local":"07/Oct/2024:09:34:31 +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.193","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a081928d0649d01f31dc07921010cf22"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 108ms","method":"POST","requestID":"7ac7262034ba4f15950e1ce076378a79","responseTime":108,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"7ac7262034ba4f15950e1ce076378a79"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 107ms","method":"POST","requestID":"37c8d5eb6efebfd80dd18760895b7878","responseTime":107,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.112","http_referrer":"","http_user_agent":"node-fetch","requestID":"37c8d5eb6efebfd80dd18760895b7878"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MX0.ZDCrUHhcr3PF5PMHE0JIAE5Kcsh8opoxcJqBcdtB5Mc","level":"info","message":"auth send jwt","requestID":"ae9ce0c325935ab2aafa0eaf4b0ab8fd"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ae9ce0c325935ab2aafa0eaf4b0ab8fd","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ae9ce0c325935ab2aafa0eaf4b0ab8fd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":997,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:31Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:31 +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.683","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"547f1d398dbf3d387151e044a59f6db3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":997,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.957457,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ae9ce0c325935ab2aafa0eaf4b0ab8fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293671,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MX0.ZDCrUHhcr3PF5PMHE0JIAE5Kcsh8opoxcJqBcdtB5Mc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ae9ce0c325935ab2aafa0eaf4b0ab8fd","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/c2f49ad9-511b-426b-a105-9c4c693e9474' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"194664ac-7753-4a02-9991-99436f0ce41d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293671.0625522} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ae9ce0c325935ab2aafa0eaf4b0ab8fd","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3f29e718-c9ff-4bb1-b58e-c95e9b7769c9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293671.067058} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/60fab421-8daa-4856-bfd2-2310e01a9cd1' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ae9ce0c325935ab2aafa0eaf4b0ab8fd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"967b800b-9034-4e0e-9e80-23f787a0dd9c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293671.0760546} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"374d4b34-7e83-4353-be04-0835cf3510ee","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293671.0761378} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"ae9ce0c325935ab2aafa0eaf4b0ab8fd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.076014223Z"}]},"request_id":"56545615-c469-473e-8d67-4624ee440117","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293671.0802336} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ae9ce0c325935ab2aafa0eaf4b0ab8fd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ae9ce0c325935ab2aafa0eaf4b0ab8fd"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"ae9ce0c325935ab2aafa0eaf4b0ab8fd","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ae9ce0c325935ab2aafa0eaf4b0ab8fd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MX0.ZDCrUHhcr3PF5PMHE0JIAE5Kcsh8opoxcJqBcdtB5Mc","level":"info","message":"auth send jwt","requestID":"4ba0f4d866cf580db5cf30ff0962e653"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4ba0f4d866cf580db5cf30ff0962e653","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4ba0f4d866cf580db5cf30ff0962e653"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":998,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":998,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.64251,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:31Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4ba0f4d866cf580db5cf30ff0962e653","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293671,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MX0.ZDCrUHhcr3PF5PMHE0JIAE5Kcsh8opoxcJqBcdtB5Mc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4ba0f4d866cf580db5cf30ff0962e653","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"bdbe672b-b11e-43e0-a305-3308dfaea5a6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293671.1087987} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4ba0f4d866cf580db5cf30ff0962e653","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02d340bf-acff-499e-96af-584d66cc183a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293671.1131177} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4ba0f4d866cf580db5cf30ff0962e653","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"5efa8d3c-7192-4d27-8d68-c78cbcd544ab","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293671.1235745} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ad6d83e8-eadd-4ed7-bc7c-39e1faf1a22f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293671.1236517} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"4ba0f4d866cf580db5cf30ff0962e653","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.123536928Z"}]},"request_id":"38c8a326-4370-4883-abbc-d60b3e3e1c87","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293671.1276436} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4ba0f4d866cf580db5cf30ff0962e653","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4ba0f4d866cf580db5cf30ff0962e653"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4ba0f4d866cf580db5cf30ff0962e653"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"4ba0f4d866cf580db5cf30ff0962e653","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MX0.ZDCrUHhcr3PF5PMHE0JIAE5Kcsh8opoxcJqBcdtB5Mc","level":"info","message":"auth send jwt","requestID":"d9de92f53f540a61dbcbdb51f3144906"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d9de92f53f540a61dbcbdb51f3144906","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"d9de92f53f540a61dbcbdb51f3144906"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":999,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":999,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.212477,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d9de92f53f540a61dbcbdb51f3144906","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293671,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MX0.ZDCrUHhcr3PF5PMHE0JIAE5Kcsh8opoxcJqBcdtB5Mc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d9de92f53f540a61dbcbdb51f3144906","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.076014223Z"}]},"request_id":"c3a69557-d6e8-48a1-ab15-4d02bc5fc577","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293671.6073432} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d9de92f53f540a61dbcbdb51f3144906","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bba3e1bc-fcd0-499b-a1bd-49a855de6bad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293671.6119924} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d9de92f53f540a61dbcbdb51f3144906","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.076014223Z"}]},"request_id":"aeb623bf-42c4-4ad4-bce3-2a6427a1a81e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293671.625848} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d9de92f53f540a61dbcbdb51f3144906","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"d9de92f53f540a61dbcbdb51f3144906"} device-1 | {"level":"info","message":"PATCH /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71 200 31ms","method":"PATCH","requestID":"d9de92f53f540a61dbcbdb51f3144906","responseTime":31,"status":200,"url":"/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71"} gateway-1 | {"time_local":"07/Oct/2024:09:34:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.036","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d9de92f53f540a61dbcbdb51f3144906"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MX0.ZDCrUHhcr3PF5PMHE0JIAE5Kcsh8opoxcJqBcdtB5Mc","level":"info","message":"auth send jwt","requestID":"6d18c4a2160ffca7c7a64f40105f8da1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6d18c4a2160ffca7c7a64f40105f8da1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6d18c4a2160ffca7c7a64f40105f8da1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1000,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:31Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1000,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.026718,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:31Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d18c4a2160ffca7c7a64f40105f8da1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293671,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3MX0.ZDCrUHhcr3PF5PMHE0JIAE5Kcsh8opoxcJqBcdtB5Mc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6d18c4a2160ffca7c7a64f40105f8da1","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6d18c4a2160ffca7c7a64f40105f8da1"} gateway-1 | {"time_local":"07/Oct/2024:09:34:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71/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.9","requestID":"6d18c4a2160ffca7c7a64f40105f8da1"} device-1 | {"level":"info","message":"POST /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71/websocket 200 21ms","method":"POST","requestID":"6d18c4a2160ffca7c7a64f40105f8da1","responseTime":21,"status":200,"url":"/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6ecb153fe499ee117513c23dbb0d6450","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"6ecb153fe499ee117513c23dbb0d6450","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b8a38256-0b6d-4458-ad90-0839e7d31283/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":"6ecb153fe499ee117513c23dbb0d6450"} device-1 | {"level":"info","message":"OPTIONS /devices/b8a38256-0b6d-4458-ad90-0839e7d31283/websocket 200 1ms","method":"OPTIONS","requestID":"6ecb153fe499ee117513c23dbb0d6450","responseTime":1,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew","level":"info","message":"auth send jwt","requestID":"7e9a6f27fc33a7743de1ee02ed9c7f36"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7e9a6f27fc33a7743de1ee02ed9c7f36","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"7e9a6f27fc33a7743de1ee02ed9c7f36"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1001,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1001,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.170476,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7e9a6f27fc33a7743de1ee02ed9c7f36","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7e9a6f27fc33a7743de1ee02ed9c7f36","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"7e9a6f27fc33a7743de1ee02ed9c7f36"} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b8a38256-0b6d-4458-ad90-0839e7d31283/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":"7e9a6f27fc33a7743de1ee02ed9c7f36"} device-1 | {"level":"info","message":"POST /devices/b8a38256-0b6d-4458-ad90-0839e7d31283/websocket 200 21ms","method":"POST","requestID":"7e9a6f27fc33a7743de1ee02ed9c7f36","responseTime":21,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d89dcd4a4e82ec4b70a8b42f43bb5047","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d89dcd4a4e82ec4b70a8b42f43bb5047","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b8a38256-0b6d-4458-ad90-0839e7d31283? 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":"d89dcd4a4e82ec4b70a8b42f43bb5047"} device-1 | {"level":"info","message":"OPTIONS /devices/b8a38256-0b6d-4458-ad90-0839e7d31283? 200 2ms","method":"OPTIONS","requestID":"d89dcd4a4e82ec4b70a8b42f43bb5047","responseTime":2,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew","level":"info","message":"auth send jwt","requestID":"78f102ab04db8196681353a9e223b646"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"78f102ab04db8196681353a9e223b646","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"78f102ab04db8196681353a9e223b646"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1002,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1002,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.922655,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78f102ab04db8196681353a9e223b646","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"78f102ab04db8196681353a9e223b646","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.123536928Z"}]},"request_id":"003a3694-86d5-48b3-891b-03ecbeafe43c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.2421842} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"78f102ab04db8196681353a9e223b646","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f473c2e3-c71b-42a1-824b-03c2e9b8977f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.2490168} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"78f102ab04db8196681353a9e223b646","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.123536928Z"}]},"request_id":"1fc3479f-f89e-4350-be45-37bc5808b60d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.2629392} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"78f102ab04db8196681353a9e223b646","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"78f102ab04db8196681353a9e223b646"} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b8a38256-0b6d-4458-ad90-0839e7d31283? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"78f102ab04db8196681353a9e223b646"} device-1 | {"level":"info","message":"PATCH /devices/b8a38256-0b6d-4458-ad90-0839e7d31283? 200 37ms","method":"PATCH","requestID":"78f102ab04db8196681353a9e223b646","responseTime":37,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew","level":"info","message":"auth send jwt","requestID":"ae5160919046bde1fa867597643321ea"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ae5160919046bde1fa867597643321ea"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ae5160919046bde1fa867597643321ea","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1003,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1003,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.190556,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ae5160919046bde1fa867597643321ea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ae5160919046bde1fa867597643321ea","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.076014223Z"}]},"request_id":"8507e1cf-4aa2-4c77-88c5-ac7614b65427","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.2877543} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ae5160919046bde1fa867597643321ea","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ae5160919046bde1fa867597643321ea"} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71? 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":"ae5160919046bde1fa867597643321ea"} device-1 | {"level":"info","message":"GET /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71? 200 13ms","method":"GET","requestID":"ae5160919046bde1fa867597643321ea","responseTime":13,"status":200,"url":"/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew","level":"info","message":"auth send jwt","requestID":"d867a1c2043575f8a155f6e8ffa03919"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d867a1c2043575f8a155f6e8ffa03919","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d867a1c2043575f8a155f6e8ffa03919"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1004,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1004,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.123819,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d867a1c2043575f8a155f6e8ffa03919","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d867a1c2043575f8a155f6e8ffa03919","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.123536928Z"}]},"request_id":"f8cc2276-b0dd-477f-8008-5322c5c745c8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.3064163} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d867a1c2043575f8a155f6e8ffa03919","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d867a1c2043575f8a155f6e8ffa03919"} device-1 | {"level":"info","message":"GET /devices/b8a38256-0b6d-4458-ad90-0839e7d31283? 200 12ms","method":"GET","requestID":"d867a1c2043575f8a155f6e8ffa03919","responseTime":12,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b8a38256-0b6d-4458-ad90-0839e7d31283? 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":"d867a1c2043575f8a155f6e8ffa03919"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew","level":"info","message":"auth send jwt","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1005,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1005,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.660126,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e72b51e3c5cfb265e551d5d7814c1e1a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Attempting to run experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Attempting to book experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Successfully booked experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c2f7ae0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c2fa1f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1006,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1006,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.134924,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1007,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c2f7ae0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c2f7ae0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1007,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.79633,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c2fa1f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c2fa1f0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.076014223Z"}]},"request_id":"14a404bb-1d56-4020-9b77-5f6b733c7e5f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.3666954} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5c2f7ae0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.123536928Z"}]},"request_id":"49cd75c3-7712-4ff8-ac73-c1d9c8637fe1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.3675537} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5c2fa1f0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c2f7ae0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71? 200 16ms","method":"GET","requestID":"5c2f7ae0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c2fa1f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b8a38256-0b6d-4458-ad90-0839e7d31283? 200 16ms","method":"GET","requestID":"5c2fa1f0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Setting up experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Successfully set up experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c38a2a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c38f0c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c393ee0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Successfully running experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1008,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1008,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.673258,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1009,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c38a2a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5c38a2a0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1009,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.978931,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c38f0c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"5c38f0c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.076014223Z"}]},"request_id":"618f4b65-f9a4-4a29-afcb-0b662af6fe71","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.4338} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.123536928Z"}]},"request_id":"62ed87a7-3be4-4592-8ab9-fa81f34164c2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.4352262} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5c38a2a0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:34172","level":"info","msg":"Received request.","req_id":1010,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5c38f0c0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b37a7003-4771-4524-b44c-d1d0e8715bc3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.4380393} authorization-1 | {"client_addr":"127.0.0.1:34172","level":"info","msg":"Sent response.","req_id":1010,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.889608,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c393ee0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","object_type":"device","rebac_allow":false,"scope_allow":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":"5c393ee0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c38a2a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71? 200 25ms","method":"GET","requestID":"5c38a2a0-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c38f0c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b8a38256-0b6d-4458-ad90-0839e7d31283? 200 24ms","method":"GET","requestID":"5c38f0c0-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F399ff30e-538b-4f14-93d6-d53d50ccd465#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F399ff30e-538b-4f14-93d6-d53d50ccd465","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"49119108-cab7-45fa-a9e1-49998ddde5fa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.4448876} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0506d1d5-41c2-4e1a-a4e9-616d6f1a54ce","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.4451528} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c393ee0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71/signaling 200 24ms","method":"POST","requestID":"5c393ee0-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a","responseTime":19,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c3d0f70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c3d5d90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1011,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1012,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"30c32a23-294c-4776-a904-b5c187f2d2bd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.4528735} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1011,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.395669,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c3d0f70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","object_type":"device","rebac_allow":false,"scope_allow":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":"5c3d0f70-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"51ffd9a2-8c62-49c9-a4a8-8f9ea5ffa733","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.4546356} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1012,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.177102,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 139ms","method":"POST","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a","responseTime":139,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c3d5d90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","object_type":"device","rebac_allow":false,"scope_allow":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":"5c3d5d90-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c3d0f70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71/signaling 200 12ms","method":"POST","requestID":"5c3d0f70-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew","level":"info","message":"auth send jwt","requestID":"1f4f1dde6d476d544cbadab04c12a7e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c3d5d90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b8a38256-0b6d-4458-ad90-0839e7d31283/signaling 200 12ms","method":"POST","requestID":"5c3d5d90-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1f4f1dde6d476d544cbadab04c12a7e0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c3f3250-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1f4f1dde6d476d544cbadab04c12a7e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1013,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1014,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1014,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.371717,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1f4f1dde6d476d544cbadab04c12a7e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1f4f1dde6d476d544cbadab04c12a7e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b2817bd2-2c4d-4644-bc5e-633430d3dfc1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.4688334} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1013,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.515521,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c3f3250-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","object_type":"device","rebac_allow":false,"scope_allow":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":"5c3f3250-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.076014223Z"}]},"request_id":"bd2aa4f3-0c0a-4b10-ad68-df83b12e1180","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.4721541} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c3f3250-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b8a38256-0b6d-4458-ad90-0839e7d31283/signaling 200 12ms","method":"POST","requestID":"5c3f3250-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1f4f1dde6d476d544cbadab04c12a7e0","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c415530-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c41a350-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1f4f1dde6d476d544cbadab04c12a7e0"} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71? 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":"1f4f1dde6d476d544cbadab04c12a7e0"} device-1 | {"level":"info","message":"GET /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71? 200 15ms","method":"GET","requestID":"1f4f1dde6d476d544cbadab04c12a7e0","responseTime":15,"status":200,"url":"/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1015,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1015,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.075852,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew","level":"info","message":"auth send jwt","requestID":"58c267ffcfb77a28c001a9c52d88b2d4"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c415530-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5c415530-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"58c267ffcfb77a28c001a9c52d88b2d4","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1016,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1016,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.802758,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c41a350-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5c41a350-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"58c267ffcfb77a28c001a9c52d88b2d4"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.076014223Z"}]},"request_id":"1d4cdc42-dac3-4dd5-b7a1-25611c087b9d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.4866445} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5c415530-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.123536928Z"}]},"request_id":"828ae5df-8ba7-40c2-be0b-4cd0d441c070","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.4874916} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5c41a350-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1017,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c415530-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1017,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.984504,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} device-1 | {"level":"info","message":"GET /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71? 200 15ms","method":"GET","requestID":"5c415530-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"58c267ffcfb77a28c001a9c52d88b2d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"58c267ffcfb77a28c001a9c52d88b2d4","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c41a350-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b8a38256-0b6d-4458-ad90-0839e7d31283? 200 17ms","method":"GET","requestID":"5c41a350-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Building connection plan","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} 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":"91e5179f-1634-442f-80f6-4a770f4b2e06"},{"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":"67737cc5-151c-43d6-8dfe-8475a5debf56"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"b0933d43-b5ce-4453-b62a-a706c2601e98"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:31.123536928Z"}]},"request_id":"26b308a9-d714-41f7-b75f-e3f010b1c607","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.4948635} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"58c267ffcfb77a28c001a9c52d88b2d4","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"5c44b090-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"5c44b090-848f-11ef-8885-7d835fc08c91"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"58c267ffcfb77a28c001a9c52d88b2d4"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"5c44b090-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b8a38256-0b6d-4458-ad90-0839e7d31283? 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":"58c267ffcfb77a28c001a9c52d88b2d4"} device-1 | {"level":"info","message":"GET /devices/b8a38256-0b6d-4458-ad90-0839e7d31283? 200 13ms","method":"GET","requestID":"58c267ffcfb77a28c001a9c52d88b2d4","responseTime":13,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/27ec8db9-cdc6-4892-a97f-0dce775c970e?id=8b4a34c0-3317-485b-8aa6-684837a7230f","ws://localhost/rooms/27ec8db9-cdc6-4892-a97f-0dce775c970e?id=f87917f4-edee-4b09-a6c4-6abff1bdf11f"]},"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/b8a38256-0b6d-4458-ad90-0839e7d31283"},{"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/e455545c-9b76-45a0-b3c0-2c65fca4ac71"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5c454cd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1018,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1018,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.80416,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c454cd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5c454cd0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"713a2b7a-4eff-4b7c-839d-23b039a59988","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.5128179} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2219adc5-567c-4009-a926-b998a864ee48","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.5131006} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5c454cd0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5c454cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5c454cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45'","requestID":"5c454cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45'","requestID":"5c454cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5c454cd0-848f-11ef-9233-95baf63f17e0"} 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":"5c454cd0-848f-11ef-9233-95baf63f17e0","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":"5c454cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bdab0484-9237-4fb8-ad20-91a4913c8f45","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5c4af220-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f87917f4-edee-4b09-a6c4-6abff1bdf11f\" in room \"http://localhost/rooms/27ec8db9-cdc6-4892-a97f-0dce775c970e\"","requestID":"5c4af220-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5c4af220-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9526ef7bcf73d0c722ccaa5c1ebe2919","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"5c4b4040-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8b4a34c0-3317-485b-8aa6-684837a7230f\" in room \"http://localhost/rooms/27ec8db9-cdc6-4892-a97f-0dce775c970e\"","requestID":"5c4b4040-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9526ef7bcf73d0c722ccaa5c1ebe2919","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5c4b4040-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"8b4a34c0-3317-485b-8aa6-684837a7230f\" in room \"http://localhost/rooms/27ec8db9-cdc6-4892-a97f-0dce775c970e\"","requestID":"5c4b4040-848f-11ef-8885-7d835fc08c91"} 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/b8a38256-0b6d-4458-ad90-0839e7d31283"},{"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/e455545c-9b76-45a0-b3c0-2c65fca4ac71"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45"}}},"level":"info","message":"received a callback","requestID":"9526ef7bcf73d0c722ccaa5c1ebe2919"} device-1 | {"data":{"peerconnection":"bdab0484-9237-4fb8-ad20-91a4913c8f45","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 14ms","method":"POST","requestID":"9526ef7bcf73d0c722ccaa5c1ebe2919","responseTime":14,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"9526ef7bcf73d0c722ccaa5c1ebe2919"} device-1 | {"data":{"peerconnection":"bdab0484-9237-4fb8-ad20-91a4913c8f45","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e72b51e3c5cfb265e551d5d7814c1e1a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c507060-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1019,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bdab0484-9237-4fb8-ad20-91a4913c8f45","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4cbec695-5754-4e51-8f5d-89b506111d38","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.5790224} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1019,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.989171,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7c7db03bcdcb46a0732dfb7d9e9fcb16","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"7c7db03bcdcb46a0732dfb7d9e9fcb16","responseTime":0,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c507060-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","object_type":"device","rebac_allow":false,"scope_allow":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":"5c507060-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} 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/b8a38256-0b6d-4458-ad90-0839e7d31283"},{"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/e455545c-9b76-45a0-b3c0-2c65fca4ac71"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45"}}},"level":"info","message":"received a callback","requestID":"7c7db03bcdcb46a0732dfb7d9e9fcb16"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5c526c30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1020,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c507060-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71/signaling 200 16ms","method":"POST","requestID":"5c507060-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbdab0484-9237-4fb8-ad20-91a4913c8f45","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6ecaa6f6-a132-4611-858a-b77ae83abd65","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.5919173} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1020,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.822142,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c532f80-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c526c30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45","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":"5c526c30-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5c526c30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1021,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} device-1 | {"level":"info","message":"GET /peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45 200 8ms","method":"GET","requestID":"5c526c30-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"792137c8-9cea-4b28-9577-e53771c2a254","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.596703} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1021,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.53691,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c532f80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5c532f80-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c532f80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b8a38256-0b6d-4458-ad90-0839e7d31283/signaling 200 9ms","method":"POST","requestID":"5c532f80-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"7c7db03bcdcb46a0732dfb7d9e9fcb16","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"7c7db03bcdcb46a0732dfb7d9e9fcb16"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c5663d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1022,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07394bd0-48ae-428c-bc85-60e8c3b52b68","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.6176648} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1022,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.681741,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c5663d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","object_type":"device","rebac_allow":false,"scope_allow":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":"5c5663d0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c5663d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b8a38256-0b6d-4458-ad90-0839e7d31283/signaling 200 10ms","method":"POST","requestID":"5c5663d0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c583890-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1023,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"988d2271-4f6b-4174-96de-ae752f90ce06","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.6313822} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1023,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.838578,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c583890-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","object_type":"device","rebac_allow":false,"scope_allow":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":"5c583890-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c583890-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71/signaling 200 11ms","method":"POST","requestID":"5c583890-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew","level":"info","message":"auth send jwt","requestID":"f6b99c2f6b3df10c2f6f2191fcfd34f3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f6b99c2f6b3df10c2f6f2191fcfd34f3","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/399ff30e-538b-4f14-93d6-d53d50ccd465","requestID":"f6b99c2f6b3df10c2f6f2191fcfd34f3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1024,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1024,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.014331,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f6b99c2f6b3df10c2f6f2191fcfd34f3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f6b99c2f6b3df10c2f6f2191fcfd34f3","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/399ff30e-538b-4f14-93d6-d53d50ccd465","requestID":"f6b99c2f6b3df10c2f6f2191fcfd34f3"} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/399ff30e-538b-4f14-93d6-d53d50ccd465 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":"f6b99c2f6b3df10c2f6f2191fcfd34f3"} experiment-1 | {"level":"info","message":"GET /experiments/399ff30e-538b-4f14-93d6-d53d50ccd465 200 11ms","method":"GET","requestID":"f6b99c2f6b3df10c2f6f2191fcfd34f3","responseTime":11,"status":200,"url":"/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew","level":"info","message":"auth send jwt","requestID":"beeb2cb159df470b670834fb05f806c8"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"beeb2cb159df470b670834fb05f806c8","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/399ff30e-538b-4f14-93d6-d53d50ccd465","requestID":"beeb2cb159df470b670834fb05f806c8"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1025,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1025,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.727928,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"beeb2cb159df470b670834fb05f806c8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"beeb2cb159df470b670834fb05f806c8","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Attempting to finish experiment","requestID":"beeb2cb159df470b670834fb05f806c8"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5c6027d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1026,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1026,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.186826,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c6027d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5c6027d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/27ec8db9-cdc6-4892-a97f-0dce775c970e?id=f87917f4-edee-4b09-a6c4-6abff1bdf11f HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.154","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1bb2361175cb5682d688407d4b676bc0"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f87917f4-edee-4b09-a6c4-6abff1bdf11f\" in room \"http://localhost/rooms/27ec8db9-cdc6-4892-a97f-0dce775c970e\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f87917f4-edee-4b09-a6c4-6abff1bdf11f\" from room \"http://localhost/rooms/27ec8db9-cdc6-4892-a97f-0dce775c970e\""} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/27ec8db9-cdc6-4892-a97f-0dce775c970e?id=8b4a34c0-3317-485b-8aa6-684837a7230f HTTP/1.1","status": "101","body_bytes_sent":"460","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":"cd829ca87dbf5bd81b5b2c182afcdbeb"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45","device":"b8a38256-0b6d-4458-ad90-0839e7d31283","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 \"8b4a34c0-3317-485b-8aa6-684837a7230f\" in room \"http://localhost/rooms/27ec8db9-cdc6-4892-a97f-0dce775c970e\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"8b4a34c0-3317-485b-8aa6-684837a7230f\" from room \"http://localhost/rooms/27ec8db9-cdc6-4892-a97f-0dce775c970e\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"bdab0484-9237-4fb8-ad20-91a4913c8f45","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbdab0484-9237-4fb8-ad20-91a4913c8f45': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fbdab0484-9237-4fb8-ad20-91a4913c8f45","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"e193c37f-7b2f-42de-974b-dea80da16be1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.6977067} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3b6a91f2a596088efd10445135f8261b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"3b6a91f2a596088efd10445135f8261b","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"33f531d0-6d62-4fdf-a08f-33b1501cc1a8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.6980703} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"5c6027d0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ccf9a7cba34c1723d589e193aa97490a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283"},{"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/e455545c-9b76-45a0-b3c0-2c65fca4ac71"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45"}}},"level":"info","message":"received a callback","requestID":"3b6a91f2a596088efd10445135f8261b"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"ccf9a7cba34c1723d589e193aa97490a","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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283"},{"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/e455545c-9b76-45a0-b3c0-2c65fca4ac71"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45"}}},"level":"info","message":"received a callback","requestID":"ccf9a7cba34c1723d589e193aa97490a"} device-1 | {"data":{"peerconnection":"bdab0484-9237-4fb8-ad20-91a4913c8f45","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5c6027d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45 204 41ms","method":"DELETE","requestID":"5c6027d0-848f-11ef-9233-95baf63f17e0","responseTime":41,"status":204,"url":"/peerconnections/bdab0484-9237-4fb8-ad20-91a4913c8f45"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"},"level":"info","message":"Successfully finished experiment","requestID":"beeb2cb159df470b670834fb05f806c8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c699db0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1027,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb8a38256-0b6d-4458-ad90-0839e7d31283","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8686308f-a699-4b1b-98dd-003e64b02b92","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.7451773} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1027,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.439897,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c699db0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b8a38256-0b6d-4458-ad90-0839e7d31283","object_type":"device","rebac_allow":false,"scope_allow":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":"5c699db0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c699db0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b8a38256-0b6d-4458-ad90-0839e7d31283/signaling 200 12ms","method":"POST","requestID":"5c699db0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/b8a38256-0b6d-4458-ad90-0839e7d31283/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5c6be7a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F399ff30e-538b-4f14-93d6-d53d50ccd465': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F399ff30e-538b-4f14-93d6-d53d50ccd465","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"8e79ac98-a603-44c5-adf5-af3383e0d924","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.7550926} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3d01b1bd-89bd-4879-9081-a7be4fae14d9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.7559717} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"beeb2cb159df470b670834fb05f806c8","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe455545c-9b76-45a0-b3c0-2c65fca4ac71","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e391c2c8-9e13-44f3-b59f-b397853a540c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.7592845} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1028,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1028,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.677801,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c6be7a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5c6be7a0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5c6be7a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71/signaling 200 11ms","method":"POST","requestID":"5c6be7a0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/e455545c-9b76-45a0-b3c0-2c65fca4ac71/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/399ff30e-538b-4f14-93d6-d53d50ccd465","requestID":"beeb2cb159df470b670834fb05f806c8"} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/399ff30e-538b-4f14-93d6-d53d50ccd465 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":"beeb2cb159df470b670834fb05f806c8"} experiment-1 | {"level":"info","message":"DELETE /experiments/399ff30e-538b-4f14-93d6-d53d50ccd465 204 161ms","method":"DELETE","requestID":"beeb2cb159df470b670834fb05f806c8","responseTime":161,"status":204,"url":"/experiments/399ff30e-538b-4f14-93d6-d53d50ccd465"} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +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.171","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a24049c39fda52a55131bf548b1ac09e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"3b6a91f2a596088efd10445135f8261b","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.136","http_referrer":"","http_user_agent":"node-fetch","requestID":"3b6a91f2a596088efd10445135f8261b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 132ms","method":"POST","requestID":"ccf9a7cba34c1723d589e193aa97490a","responseTime":132,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.137","http_referrer":"","http_user_agent":"node-fetch","requestID":"ccf9a7cba34c1723d589e193aa97490a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew","level":"info","message":"auth send jwt","requestID":"492ec4a376a158116ae75af24d831981"} authentication-1 | {"level":"info","message":"GET /auth 200 9ms","method":"GET","requestID":"492ec4a376a158116ae75af24d831981","responseTime":9,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"492ec4a376a158116ae75af24d831981"} gateway-1 | {"time_local":"07/Oct/2024:09:34:33 +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.655","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5d10d02ab3661d400391df452f728283"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1029,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1029,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.13335,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"492ec4a376a158116ae75af24d831981","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"492ec4a376a158116ae75af24d831981","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/e455545c-9b76-45a0-b3c0-2c65fca4ac71' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2e5a391e-d235-4792-955f-399e454c7456","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.8591642} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"492ec4a376a158116ae75af24d831981","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/b8a38256-0b6d-4458-ad90-0839e7d31283' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cd28f3bc-dc69-4ae5-9d59-1d027ac6cc1b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.8640382} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"492ec4a376a158116ae75af24d831981","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"1c84d533-0a9b-471d-9959-0411dd9cb18f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.8760226} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"05f154ba-6170-48ff-a9ff-57d4246dfdd9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.876132} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"492ec4a376a158116ae75af24d831981","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.875987757Z"}]},"request_id":"d14e299c-4ea4-4b6f-a8d2-56d216a3810e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.8812194} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"492ec4a376a158116ae75af24d831981","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"492ec4a376a158116ae75af24d831981"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"492ec4a376a158116ae75af24d831981","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.055","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"492ec4a376a158116ae75af24d831981"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew","level":"info","message":"auth send jwt","requestID":"a392ceddf3b745f00f9525467ad228a3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a392ceddf3b745f00f9525467ad228a3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a392ceddf3b745f00f9525467ad228a3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1030,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1030,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.722273,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:33Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a392ceddf3b745f00f9525467ad228a3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293673,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3M30.7mQ-fq60RVSVvmwfbngjV3i9JJM9awl3sXu696Em4ew"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a392ceddf3b745f00f9525467ad228a3","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"341c7632-b4f5-429e-b67d-bdd182fcda30","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.9100547} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a392ceddf3b745f00f9525467ad228a3","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f686097c-af1b-433c-9f00-e6eb5fb941a5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.9145772} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a392ceddf3b745f00f9525467ad228a3","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"4f14949f-da9b-41b2-bf37-fd34ff5a6633","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.9256253} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"76a06a32-2122-4ef7-9e22-9e94f934dfcc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.9258552} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"a392ceddf3b745f00f9525467ad228a3","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.925586293Z"}]},"request_id":"06eef1f9-a9af-468a-80c3-bf460fc75ae4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293673.930027} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a392ceddf3b745f00f9525467ad228a3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a392ceddf3b745f00f9525467ad228a3"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"a392ceddf3b745f00f9525467ad228a3","responseTime":44,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a392ceddf3b745f00f9525467ad228a3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3NH0.4dOz0Nl9EP7FhIxNJnUeK9uIqDK9UZcWE9yuwx0vhX4","level":"info","message":"auth send jwt","requestID":"a3616d7a448957cfd2e765a48c748dd6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a3616d7a448957cfd2e765a48c748dd6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"a3616d7a448957cfd2e765a48c748dd6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1031,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1031,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.78232,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a3616d7a448957cfd2e765a48c748dd6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293674,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3NH0.4dOz0Nl9EP7FhIxNJnUeK9uIqDK9UZcWE9yuwx0vhX4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a3616d7a448957cfd2e765a48c748dd6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.875987757Z"}]},"request_id":"49c83d67-2e09-4bf0-a669-6c6b9dd1473c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293674.4131203} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a3616d7a448957cfd2e765a48c748dd6","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eaf2ebe0-d971-40fd-8443-d14c2c927092","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293674.4183757} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a3616d7a448957cfd2e765a48c748dd6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.875987757Z"}]},"request_id":"ce242d09-6503-47bf-af25-b9eeed41925f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293674.4303167} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a3616d7a448957cfd2e765a48c748dd6","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a3616d7a448957cfd2e765a48c748dd6"} gateway-1 | {"time_local":"07/Oct/2024:09:34:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a3616d7a448957cfd2e765a48c748dd6"} device-1 | {"level":"info","message":"PATCH /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c 200 32ms","method":"PATCH","requestID":"a3616d7a448957cfd2e765a48c748dd6","responseTime":32,"status":200,"url":"/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3NH0.4dOz0Nl9EP7FhIxNJnUeK9uIqDK9UZcWE9yuwx0vhX4","level":"info","message":"auth send jwt","requestID":"bd39b5ff581748d61f0be54be421b88d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bd39b5ff581748d61f0be54be421b88d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bd39b5ff581748d61f0be54be421b88d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1032,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1032,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.492207,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"bd39b5ff581748d61f0be54be421b88d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293674,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3NH0.4dOz0Nl9EP7FhIxNJnUeK9uIqDK9UZcWE9yuwx0vhX4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bd39b5ff581748d61f0be54be421b88d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bd39b5ff581748d61f0be54be421b88d"} gateway-1 | {"time_local":"07/Oct/2024:09:34:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c/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.9","requestID":"bd39b5ff581748d61f0be54be421b88d"} device-1 | {"level":"info","message":"POST /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c/websocket 200 17ms","method":"POST","requestID":"bd39b5ff581748d61f0be54be421b88d","responseTime":17,"status":200,"url":"/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"92e98559197c3ea38bf9be7c3adb29b8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"92e98559197c3ea38bf9be7c3adb29b8","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/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":"92e98559197c3ea38bf9be7c3adb29b8"} device-1 | {"level":"info","message":"OPTIONS /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/websocket 200 1ms","method":"OPTIONS","requestID":"92e98559197c3ea38bf9be7c3adb29b8","responseTime":1,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3NX0.RpRD74dnMhqX9W5uNUohT7iwfcvp9Qq1iLvKL8sJFhU","level":"info","message":"auth send jwt","requestID":"78d9856ef6bf31df13dc475409b7ade8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"78d9856ef6bf31df13dc475409b7ade8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"78d9856ef6bf31df13dc475409b7ade8"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1033,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1033,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.245925,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:35Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78d9856ef6bf31df13dc475409b7ade8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293675,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3NX0.RpRD74dnMhqX9W5uNUohT7iwfcvp9Qq1iLvKL8sJFhU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"78d9856ef6bf31df13dc475409b7ade8","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"78d9856ef6bf31df13dc475409b7ade8"} gateway-1 | {"time_local":"07/Oct/2024:09:34:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/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":"78d9856ef6bf31df13dc475409b7ade8"} device-1 | {"level":"info","message":"POST /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/websocket 200 20ms","method":"POST","requestID":"78d9856ef6bf31df13dc475409b7ade8","responseTime":20,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dd75a5bd4e31db1b0fd06df2fd8bb7db","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dd75a5bd4e31db1b0fd06df2fd8bb7db","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada? 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":"dd75a5bd4e31db1b0fd06df2fd8bb7db"} device-1 | {"level":"info","message":"OPTIONS /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada? 200 1ms","method":"OPTIONS","requestID":"dd75a5bd4e31db1b0fd06df2fd8bb7db","responseTime":1,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ","level":"info","message":"auth send jwt","requestID":"9c688c9afa65538274c0f22f0b1568c9"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"9c688c9afa65538274c0f22f0b1568c9","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"9c688c9afa65538274c0f22f0b1568c9"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1034,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1034,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.595426,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9c688c9afa65538274c0f22f0b1568c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9c688c9afa65538274c0f22f0b1568c9","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.925586293Z"}]},"request_id":"1716b5bd-80b7-4fb9-a644-d61bf9c97250","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.0508747} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9c688c9afa65538274c0f22f0b1568c9","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0f609242-40d7-415b-9d71-6ac5439d6745","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.0582435} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"9c688c9afa65538274c0f22f0b1568c9","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.925586293Z"}]},"request_id":"678717e2-4218-4304-84f0-6bb6a4c0df47","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.070045} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"9c688c9afa65538274c0f22f0b1568c9","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"9c688c9afa65538274c0f22f0b1568c9"} device-1 | {"level":"info","message":"PATCH /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada? 200 38ms","method":"PATCH","requestID":"9c688c9afa65538274c0f22f0b1568c9","responseTime":38,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada? 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":"9c688c9afa65538274c0f22f0b1568c9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ","level":"info","message":"auth send jwt","requestID":"80835bb44a3502bb4e0ab2870cc14542"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"80835bb44a3502bb4e0ab2870cc14542","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"80835bb44a3502bb4e0ab2870cc14542"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1035,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1035,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.579991,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"80835bb44a3502bb4e0ab2870cc14542","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"80835bb44a3502bb4e0ab2870cc14542","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.875987757Z"}]},"request_id":"dd1d3bb6-ad06-4db3-86b0-71ed2e7093f2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.0988147} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"80835bb44a3502bb4e0ab2870cc14542","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"80835bb44a3502bb4e0ab2870cc14542"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c? 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":"80835bb44a3502bb4e0ab2870cc14542"} device-1 | {"level":"info","message":"GET /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c? 200 16ms","method":"GET","requestID":"80835bb44a3502bb4e0ab2870cc14542","responseTime":16,"status":200,"url":"/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ","level":"info","message":"auth send jwt","requestID":"ba83c5b530dde6e1824fffad8f84bd16"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ba83c5b530dde6e1824fffad8f84bd16","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ba83c5b530dde6e1824fffad8f84bd16"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1036,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1036,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.327606,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ba83c5b530dde6e1824fffad8f84bd16","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ba83c5b530dde6e1824fffad8f84bd16","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.925586293Z"}]},"request_id":"cba92dda-4271-49a6-968e-deeca68c8c19","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.1194074} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ba83c5b530dde6e1824fffad8f84bd16","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ba83c5b530dde6e1824fffad8f84bd16"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada? 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":"ba83c5b530dde6e1824fffad8f84bd16"} device-1 | {"level":"info","message":"GET /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada? 200 16ms","method":"GET","requestID":"ba83c5b530dde6e1824fffad8f84bd16","responseTime":16,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ","level":"info","message":"auth send jwt","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1037,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1037,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.262686,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Attempting to run experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Attempting to book experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Successfully booked experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5ddd51f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5ddda010-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1038,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1038,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.167556,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1039,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ddd51f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5ddd51f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1039,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.218601,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ddda010-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5ddda010-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.875987757Z"}]},"request_id":"eec20b5e-89fd-4186-b8a1-b9a5f009ebcc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.1857624} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5ddd51f0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.925586293Z"}]},"request_id":"a7bc266b-9647-4f98-87fa-d15cf4fb5f20","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.1868534} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5ddda010-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5ddd51f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c? 200 17ms","method":"GET","requestID":"5ddd51f0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5ddda010-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada? 200 16ms","method":"GET","requestID":"5ddda010-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Setting up experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Successfully set up experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5de76410-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5de78b20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5de7d940-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Successfully running experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1040,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1040,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.325685,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1041,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5de76410-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5de76410-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1041,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.218448,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5de78b20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"5de78b20-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1042,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1042,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.579527,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"335ea529-05b2-4117-a2cd-35cf468d3c60","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.252777} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5de7d940-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","object_type":"device","rebac_allow":false,"scope_allow":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":"5de7d940-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.875987757Z"}]},"request_id":"07109859-012f-469f-af67-7ef0cf1d3a62","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.2550576} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5de76410-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5de7d940-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.925586293Z"}]},"request_id":"5e18a825-cb1b-47d2-8578-ab50553fb5c3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.2583816} device-1 | {"level":"info","message":"POST /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c/signaling 200 15ms","method":"POST","requestID":"5de7d940-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5de78b20-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5deabf70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1043,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5de76410-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c? 200 26ms","method":"GET","requestID":"5de76410-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5de78b20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada? 200 26ms","method":"GET","requestID":"5de78b20-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"400f20cf-b688-4913-a9f3-6f438e6e8283","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.2692091} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffa632ba6-b5bc-4aab-b67f-854be5877177#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffa632ba6-b5bc-4aab-b67f-854be5877177","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"fc4e74be-3dd9-4c71-b74f-c67914ca8aad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.2699075} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1043,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.627476,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5deabf70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","object_type":"device","rebac_allow":false,"scope_allow":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":"5deabf70-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5debf7f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b23343ae-aecf-43ba-b171-bd3eb971f047","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.2702746} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1044,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5deabf70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/signaling 200 13ms","method":"POST","requestID":"5deabf70-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d1a4a654-f1f6-4c59-8589-3c68525643b9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.2788734} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1044,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.574116,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5debf7f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","object_type":"device","rebac_allow":false,"scope_allow":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":"5debf7f0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25","responseTime":150,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1292","request_time":"0.157","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5debf7f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c/signaling 200 13ms","method":"POST","requestID":"5debf7f0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5dee68f0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ","level":"info","message":"auth send jwt","requestID":"5d4f487b357adc7f897faad2e913f431"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5d4f487b357adc7f897faad2e913f431","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5d4f487b357adc7f897faad2e913f431"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1045,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1046,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32297d1e-112b-41a8-a362-5aa860d95947","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.2935147} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1046,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.012578,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5d4f487b357adc7f897faad2e913f431","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5d4f487b357adc7f897faad2e913f431","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1045,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.324573,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5dee68f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","object_type":"device","rebac_allow":false,"scope_allow":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":"5dee68f0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.875987757Z"}]},"request_id":"bd2ea4ce-f4cc-4c20-96d6-6a6b18f7d713","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.2990165} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5dee68f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/signaling 200 12ms","method":"POST","requestID":"5dee68f0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5d4f487b357adc7f897faad2e913f431","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5df0b2e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5df0d9f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5d4f487b357adc7f897faad2e913f431"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c? 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":"5d4f487b357adc7f897faad2e913f431"} device-1 | {"level":"info","message":"GET /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c? 200 15ms","method":"GET","requestID":"5d4f487b357adc7f897faad2e913f431","responseTime":15,"status":200,"url":"/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1047,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1047,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.617786,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1048,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1048,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.369507,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5df0d9f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5df0d9f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5df0b2e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"5df0b2e0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ","level":"info","message":"auth send jwt","requestID":"cfba67228683abdf359b1803b956b9f0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cfba67228683abdf359b1803b956b9f0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cfba67228683abdf359b1803b956b9f0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.925586293Z"}]},"request_id":"6f1b2a3e-31c9-470a-a406-260123776925","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.3141766} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5df0d9f0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.875987757Z"}]},"request_id":"cb78ce58-7f62-437b-8822-bd6629f16b95","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.3155603} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5df0d9f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5df0b2e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1049,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} device-1 | {"level":"info","message":"GET /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada? 200 16ms","method":"GET","requestID":"5df0d9f0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1049,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.399575,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"cfba67228683abdf359b1803b956b9f0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cfba67228683abdf359b1803b956b9f0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5df0b2e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c? 200 21ms","method":"GET","requestID":"5df0b2e0-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:33.925586293Z"}]},"request_id":"545d97e4-0c1f-48ad-bf03-f15148df6657","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.3239832} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Building connection plan","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} 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":"78eb3cde-03ab-413a-ac6a-6a5512147314"},{"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":"beaa7511-8a8a-4235-9752-80330f1e3066"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"a3b27056-c4cf-4f89-978b-ac5144b318c1"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"cfba67228683abdf359b1803b956b9f0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cfba67228683abdf359b1803b956b9f0"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"5df48370-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"5df48370-848f-11ef-8885-7d835fc08c91"} device-1 | {"level":"info","message":"GET /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada? 200 14ms","method":"GET","requestID":"cfba67228683abdf359b1803b956b9f0","responseTime":14,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada? 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":"cfba67228683abdf359b1803b956b9f0"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"5df48370-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72?id=5604c70d-9a5b-4a68-970f-eb83592070fa","ws://localhost/rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72?id=a5eccb4d-7571-42df-b61f-9406bad367e6"]},"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/6aed56b2-bb32-4a61-b7bc-18e040410ada"},{"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/35f75779-ac3d-43f9-81e6-5e16c0858c7c"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5df51fb0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1050,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1050,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.092018,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5df51fb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5df51fb0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"0de2bcf6-4dba-4815-8f01-14951a7698b9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.344943} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dabe7657-685d-48be-9198-b1b77730d60e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.3452175} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"5df51fb0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5df51fb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5df51fb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891'","requestID":"5df51fb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891'","requestID":"5df51fb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5df51fb0-848f-11ef-9233-95baf63f17e0"} 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":"5df51fb0-848f-11ef-9233-95baf63f17e0","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":"5df51fb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3f39982d-c142-43ba-afbb-68537bbcf891","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5dfac500-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"a5eccb4d-7571-42df-b61f-9406bad367e6\" in room \"http://localhost/rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72\"","requestID":"5dfac500-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5dfac500-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bf60c012c6e55e95b623b6eb585fad3b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bf60c012c6e55e95b623b6eb585fad3b","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":"new","url":"http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada"},{"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/35f75779-ac3d-43f9-81e6-5e16c0858c7c"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891"}}},"level":"info","message":"received a callback","requestID":"bf60c012c6e55e95b623b6eb585fad3b"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5dfb8850-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5604c70d-9a5b-4a68-970f-eb83592070fa\" in room \"http://localhost/rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72\"","requestID":"5dfb8850-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5dfb8850-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5604c70d-9a5b-4a68-970f-eb83592070fa\" in room \"http://localhost/rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72\"","requestID":"5dfb8850-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5604c70d-9a5b-4a68-970f-eb83592070fa\" in room \"http://localhost/rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5604c70d-9a5b-4a68-970f-eb83592070fa\" in room \"http://localhost/rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"5604c70d-9a5b-4a68-970f-eb83592070fa\" in room \"http://localhost/rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"5604c70d-9a5b-4a68-970f-eb83592070fa\" in room \"http://localhost/rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72\""} device-1 | {"data":{"peerconnection":"3f39982d-c142-43ba-afbb-68537bbcf891","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 14ms","method":"POST","requestID":"bf60c012c6e55e95b623b6eb585fad3b","responseTime":14,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.018","http_referrer":"","http_user_agent":"node-fetch","requestID":"bf60c012c6e55e95b623b6eb585fad3b"} device-1 | {"data":{"peerconnection":"3f39982d-c142-43ba-afbb-68537bbcf891","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4892cb2264b0d1ab1b1fc1d61f31cb25"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5dfff520-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"3f39982d-c142-43ba-afbb-68537bbcf891","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1051,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"87d5e40f40b6789bf8ea9482f6416475","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d77e5747-b89d-4f46-b554-d94e093917ef","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.4076936} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"87d5e40f40b6789bf8ea9482f6416475","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1051,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.082445,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5dfff520-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","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":[{"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/6aed56b2-bb32-4a61-b7bc-18e040410ada"},{"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/35f75779-ac3d-43f9-81e6-5e16c0858c7c"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891"}}},"level":"info","message":"received a callback","requestID":"87d5e40f40b6789bf8ea9482f6416475"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5dfff520-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5e01c9e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1052,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5dfff520-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c/signaling 200 15ms","method":"POST","requestID":"5dfff520-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3f39982d-c142-43ba-afbb-68537bbcf891","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"968e1a72-db91-4a39-ae58-e678c5cb82da","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.4190438} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1052,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.715196,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e028d30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e01c9e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891","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":"5e01c9e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1053,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5e01c9e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891 200 9ms","method":"GET","requestID":"5e01c9e0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93c2d378-e5f9-411b-b14a-b11a55e230c5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.4243603} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1053,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.218977,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e028d30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","object_type":"device","rebac_allow":false,"scope_allow":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":"5e028d30-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e028d30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/signaling 200 11ms","method":"POST","requestID":"5e028d30-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 33ms","method":"POST","requestID":"87d5e40f40b6789bf8ea9482f6416475","responseTime":33,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.037","http_referrer":"","http_user_agent":"node-fetch","requestID":"87d5e40f40b6789bf8ea9482f6416475"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e0636b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1054,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1dc147b4-9790-46e2-badc-3cc9304e8916","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.44761} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1054,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.453646,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e0636b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e0636b0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e0636b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/signaling 200 8ms","method":"POST","requestID":"5e0636b0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e07e460-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1055,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8dcd9aaf-d081-426a-8e7d-4ec7eebedeab","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.4588625} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1055,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.945667,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e07e460-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","object_type":"device","rebac_allow":false,"scope_allow":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":"5e07e460-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e07e460-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c/signaling 200 9ms","method":"POST","requestID":"5e07e460-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ","level":"info","message":"auth send jwt","requestID":"5b5cc1b2d0fea42999a5c7e16a6e3fe1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5b5cc1b2d0fea42999a5c7e16a6e3fe1","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/fa632ba6-b5bc-4aab-b67f-854be5877177","requestID":"5b5cc1b2d0fea42999a5c7e16a6e3fe1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1056,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1056,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.824058,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5b5cc1b2d0fea42999a5c7e16a6e3fe1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"5b5cc1b2d0fea42999a5c7e16a6e3fe1","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/fa632ba6-b5bc-4aab-b67f-854be5877177","requestID":"5b5cc1b2d0fea42999a5c7e16a6e3fe1"} experiment-1 | {"level":"info","message":"GET /experiments/fa632ba6-b5bc-4aab-b67f-854be5877177 200 9ms","method":"GET","requestID":"5b5cc1b2d0fea42999a5c7e16a6e3fe1","responseTime":9,"status":200,"url":"/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/fa632ba6-b5bc-4aab-b67f-854be5877177 HTTP/1.1","status": "200","body_bytes_sent":"1365","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5b5cc1b2d0fea42999a5c7e16a6e3fe1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ","level":"info","message":"auth send jwt","requestID":"7e3d4de304087f9ea42c28565f816e26"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7e3d4de304087f9ea42c28565f816e26","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/fa632ba6-b5bc-4aab-b67f-854be5877177","requestID":"7e3d4de304087f9ea42c28565f816e26"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1057,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1057,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.026607,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7e3d4de304087f9ea42c28565f816e26","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7e3d4de304087f9ea42c28565f816e26","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Attempting to finish experiment","requestID":"7e3d4de304087f9ea42c28565f816e26"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5e0ffab0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1058,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1058,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.93344,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e0ffab0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5e0ffab0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72?id=a5eccb4d-7571-42df-b61f-9406bad367e6 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.153","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"24e24e771f322fedfb91e166b677daf0"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"a5eccb4d-7571-42df-b61f-9406bad367e6\" in room \"http://localhost/rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"a5eccb4d-7571-42df-b61f-9406bad367e6\" from room \"http://localhost/rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891","device":"6aed56b2-bb32-4a61-b7bc-18e040410ada","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/3f39982d-c142-43ba-afbb-68537bbcf891' to 'http://localhost/callbacks/experiment'"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72?id=5604c70d-9a5b-4a68-970f-eb83592070fa 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":"6c1afefaf97c56fe603b6d0414fbdf53"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"5604c70d-9a5b-4a68-970f-eb83592070fa\" in room \"http://localhost/rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72\""} device-1 | {"data":{"peerconnection":"3f39982d-c142-43ba-afbb-68537bbcf891","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"5604c70d-9a5b-4a68-970f-eb83592070fa\" from room \"http://localhost/rooms/b8b0bc4a-4990-46fa-b398-796e259a7e72\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f0c1a9e1e73c0067d51aeb2838b97474","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f0c1a9e1e73c0067d51aeb2838b97474","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a63cdd710c7737f1e907fb890a2212f0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada"},{"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/35f75779-ac3d-43f9-81e6-5e16c0858c7c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891"}}},"level":"info","message":"received a callback","requestID":"f0c1a9e1e73c0067d51aeb2838b97474"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a63cdd710c7737f1e907fb890a2212f0","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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada"},{"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/35f75779-ac3d-43f9-81e6-5e16c0858c7c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891"}}},"level":"info","message":"received a callback","requestID":"a63cdd710c7737f1e907fb890a2212f0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3f39982d-c142-43ba-afbb-68537bbcf891': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F3f39982d-c142-43ba-afbb-68537bbcf891","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"14b4dbc8-8065-4335-927f-e09111f8d08b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.529858} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"66391925-ec9a-4975-b614-93f9c6976f77","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.530186} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"5e0ffab0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"3f39982d-c142-43ba-afbb-68537bbcf891","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5e0ffab0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891 204 38ms","method":"DELETE","requestID":"5e0ffab0-848f-11ef-9233-95baf63f17e0","responseTime":38,"status":204,"url":"/peerconnections/3f39982d-c142-43ba-afbb-68537bbcf891"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"},"level":"info","message":"Successfully finished experiment","requestID":"7e3d4de304087f9ea42c28565f816e26"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e185f20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1059,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6aed56b2-bb32-4a61-b7bc-18e040410ada","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"70ad86e5-cec5-4c54-a759-e0e0cc1f7ed6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.5674627} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1059,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.943102,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e185f20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e185f20-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e185f20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/signaling 200 9ms","method":"POST","requestID":"5e185f20-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/6aed56b2-bb32-4a61-b7bc-18e040410ada/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e1a0cd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffa632ba6-b5bc-4aab-b67f-854be5877177': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Ffa632ba6-b5bc-4aab-b67f-854be5877177","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"42d01111-8dbd-4d78-abca-02536128c737","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.5738435} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ca893f1f-666a-4736-b161-62fd941c67f2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.5747068} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"7e3d4de304087f9ea42c28565f816e26","responseTime":16,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1060,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F35f75779-ac3d-43f9-81e6-5e16c0858c7c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6fcf0f94-0f6c-41e8-b395-f8e057f5db74","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.578204} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1060,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.254482,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e1a0cd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e1a0cd0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e1a0cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c/signaling 200 9ms","method":"POST","requestID":"5e1a0cd0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/35f75779-ac3d-43f9-81e6-5e16c0858c7c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/fa632ba6-b5bc-4aab-b67f-854be5877177","requestID":"7e3d4de304087f9ea42c28565f816e26"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/fa632ba6-b5bc-4aab-b67f-854be5877177 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":"7e3d4de304087f9ea42c28565f816e26"} experiment-1 | {"level":"info","message":"DELETE /experiments/fa632ba6-b5bc-4aab-b67f-854be5877177 204 141ms","method":"DELETE","requestID":"7e3d4de304087f9ea42c28565f816e26","responseTime":141,"status":204,"url":"/experiments/fa632ba6-b5bc-4aab-b67f-854be5877177"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +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.180","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"05d44d21a43395e59ceac15e95c528ed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"f0c1a9e1e73c0067d51aeb2838b97474","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"f0c1a9e1e73c0067d51aeb2838b97474"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"a63cdd710c7737f1e907fb890a2212f0","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.119","http_referrer":"","http_user_agent":"node-fetch","requestID":"a63cdd710c7737f1e907fb890a2212f0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ","level":"info","message":"auth send jwt","requestID":"42810fe9bb56abddbffa935e140c8f4e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"42810fe9bb56abddbffa935e140c8f4e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"42810fe9bb56abddbffa935e140c8f4e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1061,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +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.663","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"65318f314c25138404296dd42e4f8c96"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1061,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.790115,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"42810fe9bb56abddbffa935e140c8f4e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"42810fe9bb56abddbffa935e140c8f4e","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/35f75779-ac3d-43f9-81e6-5e16c0858c7c' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c99c2751-228f-49b9-9392-4cb71571998b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.6669395} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"42810fe9bb56abddbffa935e140c8f4e","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/6aed56b2-bb32-4a61-b7bc-18e040410ada' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"158b6a9d-1a0c-480a-a6d6-776d608e3fc8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.6719358} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"42810fe9bb56abddbffa935e140c8f4e","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"8b79fde9-ba2f-4763-a78a-8c0f129be63b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.682245} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"91f7c43a-2dab-4041-98bf-c294314576b2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.682306} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"42810fe9bb56abddbffa935e140c8f4e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.682207710Z"}]},"request_id":"e28a8610-935e-4336-b8ac-08e7eb189494","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.6867728} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"42810fe9bb56abddbffa935e140c8f4e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"42810fe9bb56abddbffa935e140c8f4e"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +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":"42810fe9bb56abddbffa935e140c8f4e"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"42810fe9bb56abddbffa935e140c8f4e","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ","level":"info","message":"auth send jwt","requestID":"4a50aac479b0aeccf170bf8e56eb5fb1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4a50aac479b0aeccf170bf8e56eb5fb1","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4a50aac479b0aeccf170bf8e56eb5fb1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1062,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1062,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.839557,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:36Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4a50aac479b0aeccf170bf8e56eb5fb1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293676,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3Nn0.O8R75WvcFUofhG2Agejp3Q7K_U8bAS5shHiKK1qEBDQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4a50aac479b0aeccf170bf8e56eb5fb1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a064e737-0ae6-46ee-9b41-f061f40e6a01","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.7165263} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4a50aac479b0aeccf170bf8e56eb5fb1","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"84107efe-7866-4561-ba7c-b3a5e4b6d019","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.7209184} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4a50aac479b0aeccf170bf8e56eb5fb1","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"9296bf42-adf3-4e8f-a804-df6201696c1b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.7323198} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e2993f5d-d00d-41b4-95c4-389a85e5ba7e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.7325494} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"4a50aac479b0aeccf170bf8e56eb5fb1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.732280349Z"}]},"request_id":"03f15d96-c516-4847-b390-c3b6f71933f1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293676.736757} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4a50aac479b0aeccf170bf8e56eb5fb1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4a50aac479b0aeccf170bf8e56eb5fb1"} gateway-1 | {"time_local":"07/Oct/2024:09:34:36 +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":"4a50aac479b0aeccf170bf8e56eb5fb1"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"4a50aac479b0aeccf170bf8e56eb5fb1","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY","level":"info","message":"auth send jwt","requestID":"51bd4a4b7c13523aa6c6c4a015c95441"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"51bd4a4b7c13523aa6c6c4a015c95441","responseTime":6,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY","level":"info","message":"auth send jwt","requestID":"5c7c3808fa315ba597c345cc571d08ad"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5c7c3808fa315ba597c345cc571d08ad","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"51bd4a4b7c13523aa6c6c4a015c95441"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"5c7c3808fa315ba597c345cc571d08ad"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1063,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1063,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.871512,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1064,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"51bd4a4b7c13523aa6c6c4a015c95441","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"51bd4a4b7c13523aa6c6c4a015c95441","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1064,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.64248,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c7c3808fa315ba597c345cc571d08ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5c7c3808fa315ba597c345cc571d08ad","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.732280349Z"}]},"request_id":"af9f0cf6-f65a-495c-80f2-bd4c58b48c4b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.2094357} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"51bd4a4b7c13523aa6c6c4a015c95441","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.682207710Z"}]},"request_id":"a3f2389c-f009-440d-9dda-810aa2eb742d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.2103002} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5c7c3808fa315ba597c345cc571d08ad","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d2560948-61e7-4e36-87c7-f0d4a5a31c25","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.2142024} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"51bd4a4b7c13523aa6c6c4a015c95441","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a0901e7-0ae0-4175-b0c6-146a308592f9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.2153072} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5c7c3808fa315ba597c345cc571d08ad","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.682207710Z"}]},"request_id":"430befe5-c898-4132-a8ea-31992e4cb967","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.2178252} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5c7c3808fa315ba597c345cc571d08ad","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"5c7c3808fa315ba597c345cc571d08ad"} device-1 | {"level":"info","message":"PATCH /devices/5bb67e60-24c6-4943-bda7-00d966937d84 200 18ms","method":"PATCH","requestID":"5c7c3808fa315ba597c345cc571d08ad","responseTime":18,"status":200,"url":"/devices/5bb67e60-24c6-4943-bda7-00d966937d84"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/5bb67e60-24c6-4943-bda7-00d966937d84 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.027","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"5c7c3808fa315ba597c345cc571d08ad"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY","level":"info","message":"auth send jwt","requestID":"3e30f794ecea3f3ab55877cba2450948"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3e30f794ecea3f3ab55877cba2450948","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3e30f794ecea3f3ab55877cba2450948"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1065,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1065,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.1096,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e30f794ecea3f3ab55877cba2450948","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3e30f794ecea3f3ab55877cba2450948","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.732280349Z"}]},"request_id":"aad0646b-7bdc-4d5c-a66c-606cbf92009c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.2306676} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"51bd4a4b7c13523aa6c6c4a015c95441","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"51bd4a4b7c13523aa6c6c4a015c95441"} device-1 | {"level":"info","message":"PATCH /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25 200 33ms","method":"PATCH","requestID":"51bd4a4b7c13523aa6c6c4a015c95441","responseTime":33,"status":200,"url":"/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"51bd4a4b7c13523aa6c6c4a015c95441"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY","level":"info","message":"auth send jwt","requestID":"d1d6c92c948f34d6d36cb086b3543d17"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d1d6c92c948f34d6d36cb086b3543d17","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"d1d6c92c948f34d6d36cb086b3543d17"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3e30f794ecea3f3ab55877cba2450948"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/5bb67e60-24c6-4943-bda7-00d966937d84/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.9","requestID":"3e30f794ecea3f3ab55877cba2450948"} device-1 | {"level":"info","message":"POST /devices/5bb67e60-24c6-4943-bda7-00d966937d84/websocket 200 16ms","method":"POST","requestID":"3e30f794ecea3f3ab55877cba2450948","responseTime":16,"status":200,"url":"/devices/5bb67e60-24c6-4943-bda7-00d966937d84/websocket"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1066,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1066,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.745196,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d1d6c92c948f34d6d36cb086b3543d17","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d1d6c92c948f34d6d36cb086b3543d17","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"d1d6c92c948f34d6d36cb086b3543d17"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.014","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d1d6c92c948f34d6d36cb086b3543d17"} device-1 | {"level":"info","message":"POST /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25/websocket 200 8ms","method":"POST","requestID":"d1d6c92c948f34d6d36cb086b3543d17","responseTime":8,"status":200,"url":"/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY","level":"info","message":"auth send jwt","requestID":"73b3e007627788b96918e9d62bf5c904"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"73b3e007627788b96918e9d62bf5c904","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73b3e007627788b96918e9d62bf5c904"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1067,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1067,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.843368,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"73b3e007627788b96918e9d62bf5c904","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"73b3e007627788b96918e9d62bf5c904","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.682207710Z"}]},"request_id":"40da7516-ee2a-4f31-8ae4-8788af983da4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.274859} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"73b3e007627788b96918e9d62bf5c904","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73b3e007627788b96918e9d62bf5c904"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5bb67e60-24c6-4943-bda7-00d966937d84? 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":"73b3e007627788b96918e9d62bf5c904"} device-1 | {"level":"info","message":"GET /devices/5bb67e60-24c6-4943-bda7-00d966937d84? 200 11ms","method":"GET","requestID":"73b3e007627788b96918e9d62bf5c904","responseTime":11,"status":200,"url":"/devices/5bb67e60-24c6-4943-bda7-00d966937d84?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY","level":"info","message":"auth send jwt","requestID":"76b9586c01e216c4b1462399dc0872b1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"76b9586c01e216c4b1462399dc0872b1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"76b9586c01e216c4b1462399dc0872b1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1068,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1068,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.092232,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"76b9586c01e216c4b1462399dc0872b1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"76b9586c01e216c4b1462399dc0872b1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.732280349Z"}]},"request_id":"cff7172c-62ca-4d32-b2e6-cff666d9b1a1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.290211} authorization-1 | {"level":"info","message":"POST /relations/query 200 1ms","method":"POST","requestID":"76b9586c01e216c4b1462399dc0872b1","responseTime":1,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"76b9586c01e216c4b1462399dc0872b1"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25? 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":"76b9586c01e216c4b1462399dc0872b1"} device-1 | {"level":"info","message":"GET /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25? 200 11ms","method":"GET","requestID":"76b9586c01e216c4b1462399dc0872b1","responseTime":11,"status":200,"url":"/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY","level":"info","message":"auth send jwt","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1069,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1069,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.857327,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Attempting to run experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Attempting to book experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Successfully booked experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e8eeeb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e8f15c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1070,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1071,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1070,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.865637,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e8eeeb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5e8eeeb0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1071,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.363185,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e8f15c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5e8f15c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.682207710Z"}]},"request_id":"07936625-5a00-4505-9724-32055d70be29","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.3524265} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5e8eeeb0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.732280349Z"}]},"request_id":"01336ed0-57e7-4b2d-bf52-e97b5cc822e6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.3531868} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5e8f15c0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e8eeeb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/5bb67e60-24c6-4943-bda7-00d966937d84? 200 21ms","method":"GET","requestID":"5e8eeeb0-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/5bb67e60-24c6-4943-bda7-00d966937d84?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e8f15c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25? 200 22ms","method":"GET","requestID":"5e8f15c0-848f-11ef-9233-95baf63f17e0","responseTime":22,"status":200,"url":"/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Setting up experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Successfully locked booking for experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Attempting to update booking for experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Successfully updated booking for experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Successfully set up experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e99c420-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5e9a1240-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1072,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e9a8770-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1072,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.216428,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1073,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Successfully running experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e99c420-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e99c420-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1073,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.617283,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e9a1240-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5e9a1240-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1074,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1074,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.979737,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d0a1240c-8c43-43b4-878d-5cca327ac0c5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.4223661} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.682207710Z"}]},"request_id":"c1a897d3-b16e-4216-ab1b-b649cfd5fd1e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.424795} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e9a8770-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","object_type":"device","rebac_allow":false,"scope_allow":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":"5e9a8770-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.732280349Z"}]},"request_id":"8b4c2af4-1a3c-4eb9-ac30-bb91eaae03d6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.4260592} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"5e99c420-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5e9a1240-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e9a8770-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/5bb67e60-24c6-4943-bda7-00d966937d84/signaling 200 19ms","method":"POST","requestID":"5e9a8770-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/5bb67e60-24c6-4943-bda7-00d966937d84/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e99c420-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/5bb67e60-24c6-4943-bda7-00d966937d84? 200 26ms","method":"GET","requestID":"5e99c420-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/5bb67e60-24c6-4943-bda7-00d966937d84?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5e9a1240-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25? 200 25ms","method":"GET","requestID":"5e9a1240-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e9e09e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5e9e7f10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4d7d1020-b548-4c34-8ae6-1d80eaeff06c#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4d7d1020-b548-4c34-8ae6-1d80eaeff06c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"1743af40-452a-4fdc-a748-b9f15eb5a94e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.4408197} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4ad4fe5b-6081-4a29-8fef-7c2228957fd8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.440979} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1075,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1076,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1075,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.725864,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1cbdfdb1-54e6-4649-8e11-1c28c67ea00f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.4441519} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e9e09e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","object_type":"device","rebac_allow":false,"scope_allow":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":"5e9e09e0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1076,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.897405,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0f5e8d3c-65e1-442c-9256-27b38cf010c8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.446626} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5e9e7f10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5e9e7f10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e9e09e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25/signaling 200 13ms","method":"POST","requestID":"5e9e09e0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5e9e7f10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/5bb67e60-24c6-4943-bda7-00d966937d84/signaling 200 12ms","method":"POST","requestID":"5e9e7f10-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/5bb67e60-24c6-4943-bda7-00d966937d84/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 155ms","method":"POST","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a","responseTime":155,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ea0c900-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY","level":"info","message":"auth send jwt","requestID":"e28b9ba6af9d61eedefbd1c30e7edd57"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1077,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e28b9ba6af9d61eedefbd1c30e7edd57","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e28b9ba6af9d61eedefbd1c30e7edd57"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0e6db862-3fa4-40e5-8b50-d03aba671d7c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.4621184} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1077,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.74378,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ea0c900-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","object_type":"device","rebac_allow":false,"scope_allow":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":"5ea0c900-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1078,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1078,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.567525,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e28b9ba6af9d61eedefbd1c30e7edd57","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e28b9ba6af9d61eedefbd1c30e7edd57","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ea0c900-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25/signaling 200 12ms","method":"POST","requestID":"5ea0c900-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.682207710Z"}]},"request_id":"05fba537-2edb-416e-83fa-c49ced70702b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.4691298} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e28b9ba6af9d61eedefbd1c30e7edd57","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5ea2c4d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5ea312f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1079,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1080,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1079,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.977835,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ea2c4d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e28b9ba6af9d61eedefbd1c30e7edd57"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5ea2c4d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1080,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.604679,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/5bb67e60-24c6-4943-bda7-00d966937d84? 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":"e28b9ba6af9d61eedefbd1c30e7edd57"} device-1 | {"level":"info","message":"GET /devices/5bb67e60-24c6-4943-bda7-00d966937d84? 200 13ms","method":"GET","requestID":"e28b9ba6af9d61eedefbd1c30e7edd57","responseTime":13,"status":200,"url":"/devices/5bb67e60-24c6-4943-bda7-00d966937d84?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ea312f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5ea312f0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY","level":"info","message":"auth send jwt","requestID":"959e6f6a548175aa8facd8f606687e91"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.682207710Z"}]},"request_id":"8558b636-7a02-410e-8fdf-a0c39573cf97","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.4782794} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"959e6f6a548175aa8facd8f606687e91","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5ea2c4d0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"959e6f6a548175aa8facd8f606687e91"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.732280349Z"}]},"request_id":"4c71f610-7bc1-42cf-b58d-f1f1a87f9b1c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.4790955} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5ea312f0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1081,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1081,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.649454,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"959e6f6a548175aa8facd8f606687e91","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"959e6f6a548175aa8facd8f606687e91","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5ea2c4d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/5bb67e60-24c6-4943-bda7-00d966937d84? 200 17ms","method":"GET","requestID":"5ea2c4d0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/5bb67e60-24c6-4943-bda7-00d966937d84?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5ea312f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25? 200 15ms","method":"GET","requestID":"5ea312f0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:36.732280349Z"}]},"request_id":"56091d9f-0316-4911-b585-e5061977dec2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.4869728} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Building connection plan","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} 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":"618033e2-b518-445b-a1f3-f6b1c99bd3aa"},{"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":"9b277a1a-1e91-4e62-a674-f16bc978e5f4"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"c511c5eb-bc6b-4b42-9943-04eb6846ded6"}]},"level":"info","message":"Built pairwise service configurations","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"959e6f6a548175aa8facd8f606687e91","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"5ea5d210-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"5ea5d210-848f-11ef-8885-7d835fc08c91"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"959e6f6a548175aa8facd8f606687e91"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25? 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":"959e6f6a548175aa8facd8f606687e91"} device-1 | {"level":"info","message":"GET /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25? 200 11ms","method":"GET","requestID":"959e6f6a548175aa8facd8f606687e91","responseTime":11,"status":200,"url":"/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25?"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"5ea5d210-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0?id=81084eb2-81f1-41eb-916f-33c049d46ed5","ws://localhost/rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0?id=11341225-cb9b-4c90-bd32-7e8d66b981b1"]},"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/0ff16ea7-5638-43a8-b01e-1a0532ed8b25"},{"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/5bb67e60-24c6-4943-bda7-00d966937d84"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5ea64740-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1082,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1082,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.768135,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ea64740-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5ea64740-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"e356247d-6cbd-4021-85cd-47b24598e85b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.5040781} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c9080e2-6fd9-4ad1-8442-04b2822ba984","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.5043318} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"5ea64740-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5ea64740-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5ea64740-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a'","requestID":"5ea64740-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a'","requestID":"5ea64740-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5ea64740-848f-11ef-9233-95baf63f17e0"} 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":"5ea64740-848f-11ef-9233-95baf63f17e0","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":"5ea64740-848f-11ef-9233-95baf63f17e0"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5eac3ab0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"81084eb2-81f1-41eb-916f-33c049d46ed5\" in room \"http://localhost/rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0\"","requestID":"5eac3ab0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5eac3ab0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5eac61c0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"11341225-cb9b-4c90-bd32-7e8d66b981b1\" in room \"http://localhost/rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0\"","requestID":"5eac61c0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5eac61c0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"81084eb2-81f1-41eb-916f-33c049d46ed5\" in room \"http://localhost/rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"81084eb2-81f1-41eb-916f-33c049d46ed5\" in room \"http://localhost/rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"81084eb2-81f1-41eb-916f-33c049d46ed5\" in room \"http://localhost/rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"81084eb2-81f1-41eb-916f-33c049d46ed5\" in room \"http://localhost/rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a8f647d2-83f0-4c46-b378-13f07ed05f4a","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"952715a25b75a0887f073f44481a68b1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"952715a25b75a0887f073f44481a68b1","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":"connecting","url":"http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25"},{"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/5bb67e60-24c6-4943-bda7-00d966937d84"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a"}}},"level":"info","message":"received a callback","requestID":"952715a25b75a0887f073f44481a68b1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"0dcd5d8d4c4f8887dae5d0ee6c33310a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5eaef9d0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"952715a25b75a0887f073f44481a68b1","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"952715a25b75a0887f073f44481a68b1"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a8f647d2-83f0-4c46-b378-13f07ed05f4a","statusDeviceA":"connected","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1083,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2bc923b981c95bb0b4430727f524b09c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2bc923b981c95bb0b4430727f524b09c","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a7c3270-5018-41ad-ae20-25004946a0d5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.5542254} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1083,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.639773,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} 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/0ff16ea7-5638-43a8-b01e-1a0532ed8b25"},{"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/5bb67e60-24c6-4943-bda7-00d966937d84"}],"status":"new","type":"websocket","url":"http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a"}}},"level":"info","message":"received a callback","requestID":"2bc923b981c95bb0b4430727f524b09c"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5eaef9d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5eaef9d0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 3ms","method":"POST","requestID":"2bc923b981c95bb0b4430727f524b09c","responseTime":3,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.006","http_referrer":"","http_user_agent":"node-fetch","requestID":"2bc923b981c95bb0b4430727f524b09c"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a8f647d2-83f0-4c46-b378-13f07ed05f4a","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5eaef9d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/5bb67e60-24c6-4943-bda7-00d966937d84/signaling 200 21ms","method":"POST","requestID":"5eaef9d0-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/5bb67e60-24c6-4943-bda7-00d966937d84/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b1226c242d9900af475333367db28f05","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b1226c242d9900af475333367db28f05","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5eb27c40-848f-11ef-9233-95baf63f17e0"} 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/0ff16ea7-5638-43a8-b01e-1a0532ed8b25"},{"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/5bb67e60-24c6-4943-bda7-00d966937d84"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a"}}},"level":"info","message":"received a callback","requestID":"b1226c242d9900af475333367db28f05"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1084,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"b1226c242d9900af475333367db28f05","responseTime":4,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f8b811ff-391d-4900-8ed9-16c5cb6329e5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.5765018} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1084,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.430194,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"b1226c242d9900af475333367db28f05"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5eb27c40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5eb27c40-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a8f647d2-83f0-4c46-b378-13f07ed05f4a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5eb27c40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25/signaling 200 11ms","method":"POST","requestID":"5eb27c40-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8b86a9ce12429482542eef11dc9883bd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8b86a9ce12429482542eef11dc9883bd","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/0ff16ea7-5638-43a8-b01e-1a0532ed8b25"},{"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/5bb67e60-24c6-4943-bda7-00d966937d84"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a"}}},"level":"info","message":"received a callback","requestID":"8b86a9ce12429482542eef11dc9883bd"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5eb51450-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1085,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa8f647d2-83f0-4c46-b378-13f07ed05f4a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13307f6f-6050-4372-8d67-dfe0b4c971db","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.593073} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1085,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.113128,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5eb51450-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a","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":"5eb51450-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5eb51450-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a 200 7ms","method":"GET","requestID":"5eb51450-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 26ms","method":"POST","requestID":"8b86a9ce12429482542eef11dc9883bd","responseTime":26,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.028","http_referrer":"","http_user_agent":"node-fetch","requestID":"8b86a9ce12429482542eef11dc9883bd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5eb86fb0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1086,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6d8ff2c8-4759-450f-8543-2cadc63a0295","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.615623} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1086,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.601338,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5eb86fb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","object_type":"device","rebac_allow":false,"scope_allow":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":"5eb86fb0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5eb86fb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25/signaling 200 8ms","method":"POST","requestID":"5eb86fb0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5eb9f650-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1087,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"579efec2-24c4-4c9b-b9ac-cd52461100d6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.625309} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1087,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.43524,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5eb9f650-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5eb9f650-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5eb9f650-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/5bb67e60-24c6-4943-bda7-00d966937d84/signaling 200 8ms","method":"POST","requestID":"5eb9f650-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/5bb67e60-24c6-4943-bda7-00d966937d84/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY","level":"info","message":"auth send jwt","requestID":"dc89dee49b2c5b60e6688760b80d0a6b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dc89dee49b2c5b60e6688760b80d0a6b","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c","requestID":"dc89dee49b2c5b60e6688760b80d0a6b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1088,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1088,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.717308,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"dc89dee49b2c5b60e6688760b80d0a6b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"dc89dee49b2c5b60e6688760b80d0a6b","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c","requestID":"dc89dee49b2c5b60e6688760b80d0a6b"} experiment-1 | {"level":"info","message":"GET /experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c 200 9ms","method":"GET","requestID":"dc89dee49b2c5b60e6688760b80d0a6b","responseTime":9,"status":200,"url":"/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"dc89dee49b2c5b60e6688760b80d0a6b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY","level":"info","message":"auth send jwt","requestID":"ae3ebd91771772b0984eca9db221bfca"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ae3ebd91771772b0984eca9db221bfca","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c","requestID":"ae3ebd91771772b0984eca9db221bfca"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1089,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1089,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.023823,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ae3ebd91771772b0984eca9db221bfca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ae3ebd91771772b0984eca9db221bfca","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Attempting to finish experiment","requestID":"ae3ebd91771772b0984eca9db221bfca"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5ec0ad10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1090,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1090,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.659405,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ec0ad10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5ec0ad10-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0?id=81084eb2-81f1-41eb-916f-33c049d46ed5 HTTP/1.1","status": "101","body_bytes_sent":"458","request_time":"0.144","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"010577a1d612e4f4d5b11245c81b4ed3"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0?id=11341225-cb9b-4c90-bd32-7e8d66b981b1 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.144","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"44c052fa03efd334873a395f32b46e07"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"81084eb2-81f1-41eb-916f-33c049d46ed5\" in room \"http://localhost/rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"81084eb2-81f1-41eb-916f-33c049d46ed5\" from room \"http://localhost/rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"11341225-cb9b-4c90-bd32-7e8d66b981b1\" in room \"http://localhost/rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"11341225-cb9b-4c90-bd32-7e8d66b981b1\" from room \"http://localhost/rooms/e9999a3b-8d5b-4fb9-a2e8-dbccc7f750e0\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a8f647d2-83f0-4c46-b378-13f07ed05f4a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa8f647d2-83f0-4c46-b378-13f07ed05f4a': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa8f647d2-83f0-4c46-b378-13f07ed05f4a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"815ea1db-d8c8-450b-a705-b4eba6fe3589","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.677883} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5e6e64f64dabf99d8c07611bc1c1c24c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cc2c2102-670f-49e6-beec-b050286d8566","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.6780546} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5e6e64f64dabf99d8c07611bc1c1c24c","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"17b910ca6c18dd9fcc7a9c3b0716b5cb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 5ms","method":"POST","requestID":"5ec0ad10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} 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/0ff16ea7-5638-43a8-b01e-1a0532ed8b25"},{"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/5bb67e60-24c6-4943-bda7-00d966937d84"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a"}}},"level":"info","message":"received a callback","requestID":"5e6e64f64dabf99d8c07611bc1c1c24c"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"17b910ca6c18dd9fcc7a9c3b0716b5cb","responseTime":0,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","driver":"device2","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","driver":"device2","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","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/0ff16ea7-5638-43a8-b01e-1a0532ed8b25"},{"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/5bb67e60-24c6-4943-bda7-00d966937d84"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a"}}},"level":"info","message":"received a callback","requestID":"17b910ca6c18dd9fcc7a9c3b0716b5cb"} device-1 | {"data":{"peerconnection":"a8f647d2-83f0-4c46-b378-13f07ed05f4a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5ec0ad10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a 204 33ms","method":"DELETE","requestID":"5ec0ad10-848f-11ef-9233-95baf63f17e0","responseTime":33,"status":204,"url":"/peerconnections/a8f647d2-83f0-4c46-b378-13f07ed05f4a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"},"level":"info","message":"Successfully finished experiment","requestID":"ae3ebd91771772b0984eca9db221bfca"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ec82720-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1091,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F0ff16ea7-5638-43a8-b01e-1a0532ed8b25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9b72e5de-0725-4c9c-b533-cb34a64044f7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.720036} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1091,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.789916,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ec82720-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5ec82720-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ec82720-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25/signaling 200 10ms","method":"POST","requestID":"5ec82720-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/0ff16ea7-5638-43a8-b01e-1a0532ed8b25/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5ec9fbe0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4d7d1020-b548-4c34-8ae6-1d80eaeff06c': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F4d7d1020-b548-4c34-8ae6-1d80eaeff06c","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"3eb216f3-13bb-4968-b989-c32f43cf4eb6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.7269099} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6e7c2aa0-a6e1-4c0c-bdaf-bf99ccd978f4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.7275639} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"ae3ebd91771772b0984eca9db221bfca","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1092,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5bb67e60-24c6-4943-bda7-00d966937d84","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b9e7c65f-7209-452e-9777-3311481511ff","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.7315016} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1092,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.316531,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ec9fbe0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/5bb67e60-24c6-4943-bda7-00d966937d84","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5ec9fbe0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5ec9fbe0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/5bb67e60-24c6-4943-bda7-00d966937d84/signaling 200 10ms","method":"POST","requestID":"5ec9fbe0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/5bb67e60-24c6-4943-bda7-00d966937d84/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c","requestID":"ae3ebd91771772b0984eca9db221bfca"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c 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":"ae3ebd91771772b0984eca9db221bfca"} experiment-1 | {"level":"info","message":"DELETE /experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c 204 147ms","method":"DELETE","requestID":"ae3ebd91771772b0984eca9db221bfca","responseTime":147,"status":204,"url":"/experiments/4d7d1020-b548-4c34-8ae6-1d80eaeff06c"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +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.560","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"74e3142b1056f8cb4570f7a7417cc7e5"} gateway-1 | {"time_local":"07/Oct/2024:09:34:37 +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.553","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"359130832fdd0dfe66c82866561d78e6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"5e6e64f64dabf99d8c07611bc1c1c24c","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"5e6e64f64dabf99d8c07611bc1c1c24c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"17b910ca6c18dd9fcc7a9c3b0716b5cb","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.129","http_referrer":"","http_user_agent":"node-fetch","requestID":"17b910ca6c18dd9fcc7a9c3b0716b5cb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY","level":"info","message":"auth send jwt","requestID":"ce6e35c08bf0fb44cf661df0987356bd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ce6e35c08bf0fb44cf661df0987356bd","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/0ff16ea7-5638-43a8-b01e-1a0532ed8b25' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"ce6e35c08bf0fb44cf661df0987356bd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1093,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1093,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.802501,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ce6e35c08bf0fb44cf661df0987356bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ce6e35c08bf0fb44cf661df0987356bd","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/5bb67e60-24c6-4943-bda7-00d966937d84' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"25021536-e5ee-42fa-9ea4-ff7c67900a21","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.8293505} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ce6e35c08bf0fb44cf661df0987356bd","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3137e655-6170-429a-8cd5-21819778a3d2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.8341832} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ce6e35c08bf0fb44cf661df0987356bd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"e4247a59-3fa2-459a-8b5f-3cbe6c8beb42","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.8431315} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b514dd8c-468d-4a28-a0d7-5bb0507648a7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.8433537} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"ce6e35c08bf0fb44cf661df0987356bd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.843090023Z"}]},"request_id":"af7e8f52-fc88-465b-8ad3-e473bfd96327","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.8475878} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ce6e35c08bf0fb44cf661df0987356bd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ce6e35c08bf0fb44cf661df0987356bd"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"ce6e35c08bf0fb44cf661df0987356bd","responseTime":40,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ce6e35c08bf0fb44cf661df0987356bd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY","level":"info","message":"auth send jwt","requestID":"8ed0d1ca62402344a42b6b5b63f4a4b2"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8ed0d1ca62402344a42b6b5b63f4a4b2","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8ed0d1ca62402344a42b6b5b63f4a4b2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1094,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1094,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.684059,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:37Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8ed0d1ca62402344a42b6b5b63f4a4b2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293677,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3N30.Mra2BiYYGeFFuulQbdGfYobl2CcFGSis6XaTsGbOcdY"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8ed0d1ca62402344a42b6b5b63f4a4b2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"e39b1559-528c-4de4-bea2-27fa720d7b1d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.876174} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8ed0d1ca62402344a42b6b5b63f4a4b2","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"99709666-6c69-40af-a294-d3f7494f948b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.8809597} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8ed0d1ca62402344a42b6b5b63f4a4b2","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"77aa0bcc-90b2-4bde-8f5b-546da7ef8df1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.8922458} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f8bdd165-ff34-4c32-a6c3-d40be51fda45","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.892368} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"8ed0d1ca62402344a42b6b5b63f4a4b2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.892214249Z"}]},"request_id":"f9df6cba-d5a4-4e88-9543-4c7ca096d53e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293677.896713} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"8ed0d1ca62402344a42b6b5b63f4a4b2","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8ed0d1ca62402344a42b6b5b63f4a4b2"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8ed0d1ca62402344a42b6b5b63f4a4b2"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"8ed0d1ca62402344a42b6b5b63f4a4b2","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE","level":"info","message":"auth send jwt","requestID":"4f5b2751b070cd80af99cec178f97c53"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4f5b2751b070cd80af99cec178f97c53","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4f5b2751b070cd80af99cec178f97c53"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1095,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1095,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.631996,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4f5b2751b070cd80af99cec178f97c53","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4f5b2751b070cd80af99cec178f97c53","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE","level":"info","message":"auth send jwt","requestID":"926eda99880ecb490f02eb6bd18da76d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"926eda99880ecb490f02eb6bd18da76d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"926eda99880ecb490f02eb6bd18da76d"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.843090023Z"}]},"request_id":"27256231-1c65-4b1c-8df0-9dd68bae2e9d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.3707101} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4f5b2751b070cd80af99cec178f97c53","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1096,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1096,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.915668,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"926eda99880ecb490f02eb6bd18da76d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"926eda99880ecb490f02eb6bd18da76d","responseTime":4,"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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9ea36410-5b95-40a1-84d5-18968aca4d81","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.3773847} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4f5b2751b070cd80af99cec178f97c53","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.892214249Z"}]},"request_id":"987e44c0-fe01-4af3-8153-ef36b5cbb3bf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.3801165} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"926eda99880ecb490f02eb6bd18da76d","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"749e43ba-3687-49e5-be9c-c0183bb9b659","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.3837276} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"926eda99880ecb490f02eb6bd18da76d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.843090023Z"}]},"request_id":"16f49444-10bf-4d22-bbaa-66ed90158915","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.3924356} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4f5b2751b070cd80af99cec178f97c53","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4f5b2751b070cd80af99cec178f97c53"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6433f893-36a2-4109-bd41-a826881c3e99 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"4f5b2751b070cd80af99cec178f97c53"} device-1 | {"level":"info","message":"PATCH /devices/6433f893-36a2-4109-bd41-a826881c3e99 200 34ms","method":"PATCH","requestID":"4f5b2751b070cd80af99cec178f97c53","responseTime":34,"status":200,"url":"/devices/6433f893-36a2-4109-bd41-a826881c3e99"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE","level":"info","message":"auth send jwt","requestID":"608b6c22fc6857e3197cd7542bcbfb62"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"608b6c22fc6857e3197cd7542bcbfb62","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"608b6c22fc6857e3197cd7542bcbfb62"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1097,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1097,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.830148,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"608b6c22fc6857e3197cd7542bcbfb62","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"608b6c22fc6857e3197cd7542bcbfb62","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.892214249Z"}]},"request_id":"569e5c14-17ce-4d1c-b881-1a25befe2ab4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.4047565} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"926eda99880ecb490f02eb6bd18da76d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"926eda99880ecb490f02eb6bd18da76d"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4b53ed65-5619-44a0-985b-ce25003b7a18 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.046","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"926eda99880ecb490f02eb6bd18da76d"} device-1 | {"level":"info","message":"PATCH /devices/4b53ed65-5619-44a0-985b-ce25003b7a18 200 40ms","method":"PATCH","requestID":"926eda99880ecb490f02eb6bd18da76d","responseTime":40,"status":200,"url":"/devices/4b53ed65-5619-44a0-985b-ce25003b7a18"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE","level":"info","message":"auth send jwt","requestID":"3dc3ce882a2ff6e3fd514e059aacf126"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3dc3ce882a2ff6e3fd514e059aacf126","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3dc3ce882a2ff6e3fd514e059aacf126"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1098,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1098,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724761,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"608b6c22fc6857e3197cd7542bcbfb62"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3dc3ce882a2ff6e3fd514e059aacf126","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6433f893-36a2-4109-bd41-a826881c3e99/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.9","requestID":"608b6c22fc6857e3197cd7542bcbfb62"} device-1 | {"level":"info","message":"POST /devices/6433f893-36a2-4109-bd41-a826881c3e99/websocket 200 19ms","method":"POST","requestID":"608b6c22fc6857e3197cd7542bcbfb62","responseTime":19,"status":200,"url":"/devices/6433f893-36a2-4109-bd41-a826881c3e99/websocket"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3dc3ce882a2ff6e3fd514e059aacf126","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3dc3ce882a2ff6e3fd514e059aacf126"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4b53ed65-5619-44a0-985b-ce25003b7a18/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.9","requestID":"3dc3ce882a2ff6e3fd514e059aacf126"} device-1 | {"level":"info","message":"POST /devices/4b53ed65-5619-44a0-985b-ce25003b7a18/websocket 200 18ms","method":"POST","requestID":"3dc3ce882a2ff6e3fd514e059aacf126","responseTime":18,"status":200,"url":"/devices/4b53ed65-5619-44a0-985b-ce25003b7a18/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE","level":"info","message":"auth send jwt","requestID":"46608cb78b6f713ee6dc4b393607754e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"46608cb78b6f713ee6dc4b393607754e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"46608cb78b6f713ee6dc4b393607754e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1099,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1099,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.301061,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"46608cb78b6f713ee6dc4b393607754e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"46608cb78b6f713ee6dc4b393607754e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.843090023Z"}]},"request_id":"89b004c6-7714-47d1-8f72-9fe672e711e9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.4692395} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"46608cb78b6f713ee6dc4b393607754e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"46608cb78b6f713ee6dc4b393607754e"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6433f893-36a2-4109-bd41-a826881c3e99? 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":"46608cb78b6f713ee6dc4b393607754e"} device-1 | {"level":"info","message":"GET /devices/6433f893-36a2-4109-bd41-a826881c3e99? 200 14ms","method":"GET","requestID":"46608cb78b6f713ee6dc4b393607754e","responseTime":14,"status":200,"url":"/devices/6433f893-36a2-4109-bd41-a826881c3e99?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE","level":"info","message":"auth send jwt","requestID":"302364042643d65594ab367db95022dc"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"302364042643d65594ab367db95022dc","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"302364042643d65594ab367db95022dc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1100,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1100,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.690641,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"302364042643d65594ab367db95022dc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"302364042643d65594ab367db95022dc","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.892214249Z"}]},"request_id":"da8a91d3-8974-4d0b-885d-e612d80f0209","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.485394} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"302364042643d65594ab367db95022dc","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"302364042643d65594ab367db95022dc"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4b53ed65-5619-44a0-985b-ce25003b7a18? 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":"302364042643d65594ab367db95022dc"} device-1 | {"level":"info","message":"GET /devices/4b53ed65-5619-44a0-985b-ce25003b7a18? 200 10ms","method":"GET","requestID":"302364042643d65594ab367db95022dc","responseTime":10,"status":200,"url":"/devices/4b53ed65-5619-44a0-985b-ce25003b7a18?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE","level":"info","message":"auth send jwt","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fe567d5e0c194ae8b43988d6ba35c79a","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1101,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1101,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.063838,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"fe567d5e0c194ae8b43988d6ba35c79a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fe567d5e0c194ae8b43988d6ba35c79a","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Attempting to run experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Attempting to book experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Successfully booked experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f4434f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f448310-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1102,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1102,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.173813,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f4434f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5f4434f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1103,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1103,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.249162,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f448310-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5f448310-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.843090023Z"}]},"request_id":"c9e897f3-1044-4558-94cf-1aac06821272","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.5381045} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5f4434f0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.892214249Z"}]},"request_id":"432f741e-be6b-4e35-b623-a10d21a1c39f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.538729} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5f448310-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f4434f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6433f893-36a2-4109-bd41-a826881c3e99? 200 17ms","method":"GET","requestID":"5f4434f0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/6433f893-36a2-4109-bd41-a826881c3e99?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f448310-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/4b53ed65-5619-44a0-985b-ce25003b7a18? 200 16ms","method":"GET","requestID":"5f448310-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/4b53ed65-5619-44a0-985b-ce25003b7a18?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Setting up experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Successfully locked booking for experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Attempting to update booking for experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Successfully updated booking for experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Successfully set up experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f4e6e20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f4ee350-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Successfully running experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f4f3170-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1104,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1104,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.312531,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1105,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f4e6e20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"5f4e6e20-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1105,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.14599,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f4ee350-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"5f4ee350-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1106,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1106,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.587236,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ff719958-a853-4970-9830-9a5c7cf74e4b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.6100392} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f4f3170-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","object_type":"device","rebac_allow":false,"scope_allow":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":"5f4f3170-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.843090023Z"}]},"request_id":"4d1157f7-0909-4a41-a636-1cd0e32c4c89","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.611162} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.892214249Z"}]},"request_id":"c5f18ead-58e8-4c81-820e-49b1c2dae6c2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.6127033} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"5f4e6e20-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"5f4ee350-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f4e6e20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6433f893-36a2-4109-bd41-a826881c3e99? 200 28ms","method":"GET","requestID":"5f4e6e20-848f-11ef-9233-95baf63f17e0","responseTime":28,"status":200,"url":"/devices/6433f893-36a2-4109-bd41-a826881c3e99?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f4f3170-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6433f893-36a2-4109-bd41-a826881c3e99/signaling 200 24ms","method":"POST","requestID":"5f4f3170-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/6433f893-36a2-4109-bd41-a826881c3e99/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f4ee350-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/4b53ed65-5619-44a0-985b-ce25003b7a18? 200 27ms","method":"GET","requestID":"5f4ee350-848f-11ef-9233-95baf63f17e0","responseTime":27,"status":200,"url":"/devices/4b53ed65-5619-44a0-985b-ce25003b7a18?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f532910-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb14155c7-2263-4344-808f-2773e4531b31#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb14155c7-2263-4344-808f-2773e4531b31","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"ec3400ac-b465-47f5-b9fc-38edea5a83e4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.626325} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"114444f5-9e38-40f1-9af6-0f0a79f2d7d3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.626637} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f537730-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"fe567d5e0c194ae8b43988d6ba35c79a","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1107,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1108,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"11cd9f46-769d-4852-ac75-492ddb24f642","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.630886} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1107,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.277225,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f532910-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","object_type":"device","rebac_allow":false,"scope_allow":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":"5f532910-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bcd3c781-ac5c-4156-92ca-e6de873e9bb6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.6330066} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1108,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.586895,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f537730-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","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":"5f532910-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5f537730-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} device-1 | {"level":"info","message":"POST /devices/4b53ed65-5619-44a0-985b-ce25003b7a18/signaling 200 10ms","method":"POST","requestID":"5f532910-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/4b53ed65-5619-44a0-985b-ce25003b7a18/signaling"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1296","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} experiment-1 | {"level":"info","message":"POST /experiments? 201 144ms","method":"POST","requestID":"fe567d5e0c194ae8b43988d6ba35c79a","responseTime":144,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f537730-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6433f893-36a2-4109-bd41-a826881c3e99/signaling 200 11ms","method":"POST","requestID":"5f537730-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/6433f893-36a2-4109-bd41-a826881c3e99/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE","level":"info","message":"auth send jwt","requestID":"3d0b1b1d323b57e54f56a3405337c137"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f554bf0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3d0b1b1d323b57e54f56a3405337c137","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3d0b1b1d323b57e54f56a3405337c137"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1109,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1110,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1110,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.543133,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3d0b1b1d323b57e54f56a3405337c137","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"3d0b1b1d323b57e54f56a3405337c137","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"64c816a0-0a20-4261-af10-0bef8eaa97d2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.643972} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1109,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.12393,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f554bf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","object_type":"device","rebac_allow":false,"scope_allow":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":"5f554bf0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.843090023Z"}]},"request_id":"a728f8e8-d460-490c-afa2-12892303c52a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.6482937} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f554bf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4b53ed65-5619-44a0-985b-ce25003b7a18/signaling 200 10ms","method":"POST","requestID":"5f554bf0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/4b53ed65-5619-44a0-985b-ce25003b7a18/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3d0b1b1d323b57e54f56a3405337c137","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f56f9a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5f5720b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3d0b1b1d323b57e54f56a3405337c137"} device-1 | {"level":"info","message":"GET /devices/6433f893-36a2-4109-bd41-a826881c3e99? 200 12ms","method":"GET","requestID":"3d0b1b1d323b57e54f56a3405337c137","responseTime":12,"status":200,"url":"/devices/6433f893-36a2-4109-bd41-a826881c3e99?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6433f893-36a2-4109-bd41-a826881c3e99? 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":"3d0b1b1d323b57e54f56a3405337c137"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1111,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1111,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.758303,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1112,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f56f9a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5f56f9a0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1112,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.57205,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE","level":"info","message":"auth send jwt","requestID":"a0f2e7408013ed500c0b997956be8ae0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f5720b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a0f2e7408013ed500c0b997956be8ae0","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5f5720b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.843090023Z"}]},"request_id":"2e479e35-b22e-40b7-9673-11b5467394ec","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.6574755} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5f56f9a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a0f2e7408013ed500c0b997956be8ae0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.892214249Z"}]},"request_id":"bde737d7-1cb7-4edb-aa67-7644aa745cec","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.6613474} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5f5720b0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1113,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1113,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.814212,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f56f9a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a0f2e7408013ed500c0b997956be8ae0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} device-1 | {"level":"info","message":"GET /devices/6433f893-36a2-4109-bd41-a826881c3e99? 200 15ms","method":"GET","requestID":"5f56f9a0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/6433f893-36a2-4109-bd41-a826881c3e99?"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a0f2e7408013ed500c0b997956be8ae0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5f5720b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/4b53ed65-5619-44a0-985b-ce25003b7a18? 200 16ms","method":"GET","requestID":"5f5720b0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/4b53ed65-5619-44a0-985b-ce25003b7a18?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Building connection plan","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} 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":"5c2326a9-4747-49f0-9ee7-8eadc81059a9"},{"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":"81ebcd15-81dd-43d1-95ed-d555e6a4e033"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"4e5479e3-1551-4976-b34f-7e4bce1750f5"}]},"level":"info","message":"Built pairwise service configurations","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:37.892214249Z"}]},"request_id":"3f4969c0-0bd0-4825-ae43-b208711e685d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.6689546} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a0f2e7408013ed500c0b997956be8ae0","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"5f5a06e0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"5f5a06e0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"5f5a06e0-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a0f2e7408013ed500c0b997956be8ae0"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4b53ed65-5619-44a0-985b-ce25003b7a18? 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":"a0f2e7408013ed500c0b997956be8ae0"} device-1 | {"level":"info","message":"GET /devices/4b53ed65-5619-44a0-985b-ce25003b7a18? 200 11ms","method":"GET","requestID":"a0f2e7408013ed500c0b997956be8ae0","responseTime":11,"status":200,"url":"/devices/4b53ed65-5619-44a0-985b-ce25003b7a18?"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/33a01f1d-9095-4346-988a-8cc38858538a?id=cb3eee2a-08ee-43fd-8786-00944e9ff59b","ws://localhost/rooms/33a01f1d-9095-4346-988a-8cc38858538a?id=c76e72f8-48cf-4e48-88b0-f97b7935d756"]},"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/6433f893-36a2-4109-bd41-a826881c3e99"},{"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/4b53ed65-5619-44a0-985b-ce25003b7a18"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"5f5a7c10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1114,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1114,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.676313,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f5a7c10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5f5a7c10-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"a8277b74-52f3-42b5-9140-8c85dd6b2ebe","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.684328} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"106f2695-b5c0-44ee-98f9-cd11d75a8413","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.684583} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5f5a7c10-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"5f5a7c10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"5f5a7c10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494'","requestID":"5f5a7c10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494'","requestID":"5f5a7c10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"5f5a7c10-848f-11ef-9233-95baf63f17e0"} 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":"5f5a7c10-848f-11ef-9233-95baf63f17e0","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":"5f5a7c10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e7618208-a1ea-4e08-bf76-c31da8746494","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5f5f5e10-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"cb3eee2a-08ee-43fd-8786-00944e9ff59b\" in room \"http://localhost/rooms/33a01f1d-9095-4346-988a-8cc38858538a\"","requestID":"5f5f5e10-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5f5f5e10-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"5f5fac30-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"970d019cb3057dda7a54d0b1e6071bc9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 \"c76e72f8-48cf-4e48-88b0-f97b7935d756\" in room \"http://localhost/rooms/33a01f1d-9095-4346-988a-8cc38858538a\"","requestID":"5f5fac30-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"5f5fac30-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"970d019cb3057dda7a54d0b1e6071bc9","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c76e72f8-48cf-4e48-88b0-f97b7935d756\" in room \"http://localhost/rooms/33a01f1d-9095-4346-988a-8cc38858538a\"","requestID":"5f5fac30-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c76e72f8-48cf-4e48-88b0-f97b7935d756\" in room \"http://localhost/rooms/33a01f1d-9095-4346-988a-8cc38858538a\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c76e72f8-48cf-4e48-88b0-f97b7935d756\" in room \"http://localhost/rooms/33a01f1d-9095-4346-988a-8cc38858538a\""} 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/6433f893-36a2-4109-bd41-a826881c3e99"},{"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/4b53ed65-5619-44a0-985b-ce25003b7a18"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494"}}},"level":"info","message":"received a callback","requestID":"970d019cb3057dda7a54d0b1e6071bc9"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"c76e72f8-48cf-4e48-88b0-f97b7935d756\" in room \"http://localhost/rooms/33a01f1d-9095-4346-988a-8cc38858538a\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"c76e72f8-48cf-4e48-88b0-f97b7935d756\" in room \"http://localhost/rooms/33a01f1d-9095-4346-988a-8cc38858538a\""} device-1 | {"data":{"peerconnection":"e7618208-a1ea-4e08-bf76-c31da8746494","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 11ms","method":"POST","requestID":"970d019cb3057dda7a54d0b1e6071bc9","responseTime":11,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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":"970d019cb3057dda7a54d0b1e6071bc9"} device-1 | {"data":{"peerconnection":"e7618208-a1ea-4e08-bf76-c31da8746494","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"fe567d5e0c194ae8b43988d6ba35c79a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f646720-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1115,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e7618208-a1ea-4e08-bf76-c31da8746494","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e2726844-06dc-4cbb-aa15-f466eb3370c6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.7429502} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1115,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.453089,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2b28cb555a7546fe9b3a963642208682","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/6433f893-36a2-4109-bd41-a826881c3e99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f646720-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2b28cb555a7546fe9b3a963642208682","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5f646720-848f-11ef-9233-95baf63f17e0","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","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/6433f893-36a2-4109-bd41-a826881c3e99"},{"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/4b53ed65-5619-44a0-985b-ce25003b7a18"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494"}}},"level":"info","message":"received a callback","requestID":"2b28cb555a7546fe9b3a963642208682"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"5f663be0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1116,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f646720-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6433f893-36a2-4109-bd41-a826881c3e99/signaling 200 15ms","method":"POST","requestID":"5f646720-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/6433f893-36a2-4109-bd41-a826881c3e99/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe7618208-a1ea-4e08-bf76-c31da8746494","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2577eb87-9f3a-4759-819e-887b3cefed01","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.7547128} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1116,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.626374,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f663be0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494","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":"5f663be0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f672640-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1117,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"5f663be0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494 200 9ms","method":"GET","requestID":"5f663be0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fedd2a4e-4c6b-41d3-8016-d0ba48d06937","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.7605934} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1117,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.855583,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f672640-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5f672640-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f672640-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4b53ed65-5619-44a0-985b-ce25003b7a18/signaling 200 9ms","method":"POST","requestID":"5f672640-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/4b53ed65-5619-44a0-985b-ce25003b7a18/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 29ms","method":"POST","requestID":"2b28cb555a7546fe9b3a963642208682","responseTime":29,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"2b28cb555a7546fe9b3a963642208682"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f6a0c70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1118,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"39b4b164-028f-48f9-9838-d3ec2f833313","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.7803035} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1118,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.945275,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f6a0c70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5f6a0c70-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f6a0c70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6433f893-36a2-4109-bd41-a826881c3e99/signaling 200 8ms","method":"POST","requestID":"5f6a0c70-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/6433f893-36a2-4109-bd41-a826881c3e99/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f6b9310-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1119,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e0f254c4-0050-4a2b-add7-f472a86607f3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.7892833} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1119,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.451506,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f6b9310-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","object_type":"device","rebac_allow":false,"scope_allow":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":"5f6b9310-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f6b9310-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4b53ed65-5619-44a0-985b-ce25003b7a18/signaling 200 8ms","method":"POST","requestID":"5f6b9310-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/4b53ed65-5619-44a0-985b-ce25003b7a18/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE","level":"info","message":"auth send jwt","requestID":"8ba16f67d15a67deb48de8fb478bfd3e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8ba16f67d15a67deb48de8fb478bfd3e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/b14155c7-2263-4344-808f-2773e4531b31","requestID":"8ba16f67d15a67deb48de8fb478bfd3e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1120,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1120,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.697122,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8ba16f67d15a67deb48de8fb478bfd3e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8ba16f67d15a67deb48de8fb478bfd3e","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/b14155c7-2263-4344-808f-2773e4531b31","requestID":"8ba16f67d15a67deb48de8fb478bfd3e"} experiment-1 | {"level":"info","message":"GET /experiments/b14155c7-2263-4344-808f-2773e4531b31 200 13ms","method":"GET","requestID":"8ba16f67d15a67deb48de8fb478bfd3e","responseTime":13,"status":200,"url":"/experiments/b14155c7-2263-4344-808f-2773e4531b31"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/b14155c7-2263-4344-808f-2773e4531b31 HTTP/1.1","status": "200","body_bytes_sent":"1369","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"8ba16f67d15a67deb48de8fb478bfd3e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE","level":"info","message":"auth send jwt","requestID":"ac514093bd1c561e749c56ef5ddb8e37"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ac514093bd1c561e749c56ef5ddb8e37","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/b14155c7-2263-4344-808f-2773e4531b31","requestID":"ac514093bd1c561e749c56ef5ddb8e37"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1121,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1121,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.772118,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ac514093bd1c561e749c56ef5ddb8e37","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ac514093bd1c561e749c56ef5ddb8e37","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Attempting to finish experiment","requestID":"ac514093bd1c561e749c56ef5ddb8e37"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"5f746cb0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1122,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1122,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.709459,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f746cb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5f746cb0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/33a01f1d-9095-4346-988a-8cc38858538a?id=cb3eee2a-08ee-43fd-8786-00944e9ff59b HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.148","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"4f2de1d18f0d35258f4092cc7af57433"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/33a01f1d-9095-4346-988a-8cc38858538a?id=c76e72f8-48cf-4e48-88b0-f97b7935d756 HTTP/1.1","status": "101","body_bytes_sent":"916","request_time":"0.148","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f6fea6163923f6dac95cafaedbecb2d0"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"cb3eee2a-08ee-43fd-8786-00944e9ff59b\" in room \"http://localhost/rooms/33a01f1d-9095-4346-988a-8cc38858538a\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"cb3eee2a-08ee-43fd-8786-00944e9ff59b\" from room \"http://localhost/rooms/33a01f1d-9095-4346-988a-8cc38858538a\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"c76e72f8-48cf-4e48-88b0-f97b7935d756\" in room \"http://localhost/rooms/33a01f1d-9095-4346-988a-8cc38858538a\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"c76e72f8-48cf-4e48-88b0-f97b7935d756\" from room \"http://localhost/rooms/33a01f1d-9095-4346-988a-8cc38858538a\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"e7618208-a1ea-4e08-bf76-c31da8746494","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f8519930f106bc11524ac02395fb55ee","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f8519930f106bc11524ac02395fb55ee","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe7618208-a1ea-4e08-bf76-c31da8746494': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fe7618208-a1ea-4e08-bf76-c31da8746494","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"b47eaaa8-1c1f-46d9-8e43-13238bc6e720","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.8569145} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6fc4860d340712fbfa210c1ef98ff8e4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6fc4860d340712fbfa210c1ef98ff8e4","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":"closed","url":"http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99"},{"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/4b53ed65-5619-44a0-985b-ce25003b7a18"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494"}}},"level":"info","message":"received a callback","requestID":"f8519930f106bc11524ac02395fb55ee"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ff16a9c8-09ce-4a8b-be71-638bc8c309e5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.8584986} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","driver":"device1","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","driver":"device1","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99"},{"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/4b53ed65-5619-44a0-985b-ce25003b7a18"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494"}}},"level":"info","message":"received a callback","requestID":"6fc4860d340712fbfa210c1ef98ff8e4"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"5f746cb0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"e7618208-a1ea-4e08-bf76-c31da8746494","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"5f746cb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494 204 30ms","method":"DELETE","requestID":"5f746cb0-848f-11ef-9233-95baf63f17e0","responseTime":30,"status":204,"url":"/peerconnections/e7618208-a1ea-4e08-bf76-c31da8746494"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/b14155c7-2263-4344-808f-2773e4531b31"},"level":"info","message":"Successfully finished experiment","requestID":"ac514093bd1c561e749c56ef5ddb8e37"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f7c0dd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1123,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6433f893-36a2-4109-bd41-a826881c3e99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83bba66d-dd0a-483f-9cdc-d760563c111f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.8989222} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1123,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.642662,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f7c0dd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99","object_type":"device","rebac_allow":false,"scope_allow":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":"5f7c0dd0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb14155c7-2263-4344-808f-2773e4531b31': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fb14155c7-2263-4344-808f-2773e4531b31","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"9134b4ed-c012-4d3d-87ac-29e8617814ff","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.9025743} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f7c0dd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f015feab-0d1c-4dfe-8517-0f67998cb0a2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.9027941} device-1 | {"level":"info","message":"POST /devices/6433f893-36a2-4109-bd41-a826881c3e99/signaling 200 10ms","method":"POST","requestID":"5f7c0dd0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/6433f893-36a2-4109-bd41-a826881c3e99/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"ac514093bd1c561e749c56ef5ddb8e37","responseTime":13,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"5f7de290-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1124,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4b53ed65-5619-44a0-985b-ce25003b7a18","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c42b951b-3d37-4374-8198-4b7cf0f353e0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.9097703} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1124,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.025113,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5f7de290-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4b53ed65-5619-44a0-985b-ce25003b7a18","object_type":"device","rebac_allow":false,"scope_allow":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":"5f7de290-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"5f7de290-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4b53ed65-5619-44a0-985b-ce25003b7a18/signaling 200 9ms","method":"POST","requestID":"5f7de290-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/4b53ed65-5619-44a0-985b-ce25003b7a18/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/b14155c7-2263-4344-808f-2773e4531b31","requestID":"ac514093bd1c561e749c56ef5ddb8e37"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/b14155c7-2263-4344-808f-2773e4531b31 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":"ac514093bd1c561e749c56ef5ddb8e37"} experiment-1 | {"level":"info","message":"DELETE /experiments/b14155c7-2263-4344-808f-2773e4531b31 204 137ms","method":"DELETE","requestID":"ac514093bd1c561e749c56ef5ddb8e37","responseTime":137,"status":204,"url":"/experiments/b14155c7-2263-4344-808f-2773e4531b31"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +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.537","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"cccb9d87a124218ca83d9cde1ab3de23"} gateway-1 | {"time_local":"07/Oct/2024:09:34:38 +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.550","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"feb42de80a4aa6c3e36fcc6fc080c2bb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"f8519930f106bc11524ac02395fb55ee","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"f8519930f106bc11524ac02395fb55ee"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"6fc4860d340712fbfa210c1ef98ff8e4","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.118","http_referrer":"","http_user_agent":"node-fetch","requestID":"6fc4860d340712fbfa210c1ef98ff8e4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE","level":"info","message":"auth send jwt","requestID":"bb6732f7f80775f7abb3a72f20c82bb7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bb6732f7f80775f7abb3a72f20c82bb7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"bb6732f7f80775f7abb3a72f20c82bb7"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6433f893-36a2-4109-bd41-a826881c3e99' closed"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1125,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1125,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.988576,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:38Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"bb6732f7f80775f7abb3a72f20c82bb7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293678,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OH0.80kAgnRNgwl1BT4_5Dr3qJIWsQR8kusFe-2BYtfY7yE"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"bb6732f7f80775f7abb3a72f20c82bb7","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/4b53ed65-5619-44a0-985b-ce25003b7a18' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"d13a51b1-7d1f-4df7-b134-b60005a26987","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293678.9961097} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bb6732f7f80775f7abb3a72f20c82bb7","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d4a6fdcf-637c-4f9d-aaff-b84e1b4e7cfe","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293679.0009708} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"bb6732f7f80775f7abb3a72f20c82bb7","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"62c3f62f-d2c9-4a1f-9fb9-00d60b299106","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293679.0108314} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a538afe9-e465-447e-9ee6-07a64e77bde7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293679.011061} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"bb6732f7f80775f7abb3a72f20c82bb7","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.010789787Z"}]},"request_id":"2593f9a1-3612-42bd-b0f2-15b63462048f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293679.015642} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"bb6732f7f80775f7abb3a72f20c82bb7","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"bb6732f7f80775f7abb3a72f20c82bb7"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"bb6732f7f80775f7abb3a72f20c82bb7","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bb6732f7f80775f7abb3a72f20c82bb7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OX0.cx9u5Bv6WIVuN2gZ9f6HSNwuipEa844TJ0YytHZtaiI","level":"info","message":"auth send jwt","requestID":"e61ebe87aef7675193e75666a86b179f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e61ebe87aef7675193e75666a86b179f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"e61ebe87aef7675193e75666a86b179f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1126,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:39Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1126,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.881268,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:39Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e61ebe87aef7675193e75666a86b179f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293679,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY3OX0.cx9u5Bv6WIVuN2gZ9f6HSNwuipEa844TJ0YytHZtaiI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e61ebe87aef7675193e75666a86b179f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"56570a04-5bcd-4930-8130-6e4933cc3f2d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293679.0448625} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e61ebe87aef7675193e75666a86b179f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"26b94064-f46a-4bb0-a753-8664c41ba171","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293679.0492315} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"e61ebe87aef7675193e75666a86b179f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"12599b0b-af8e-4dfe-b184-260e11c3aeea","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293679.059938} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"52a04da4-d36e-4c24-9ebc-f55e170724be","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293679.0602133} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"e61ebe87aef7675193e75666a86b179f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.059904726Z"}]},"request_id":"addd89e3-0e66-4bd3-a28c-bf31ba5972ea","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293679.0641727} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e61ebe87aef7675193e75666a86b179f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"e61ebe87aef7675193e75666a86b179f"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"e61ebe87aef7675193e75666a86b179f","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:39 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e61ebe87aef7675193e75666a86b179f"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"81708fc722a87196ea090678c2a7ca1a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"81708fc722a87196ea090678c2a7ca1a","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/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":"81708fc722a87196ea090678c2a7ca1a"} device-1 | {"level":"info","message":"OPTIONS /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/websocket 200 1ms","method":"OPTIONS","requestID":"81708fc722a87196ea090678c2a7ca1a","responseTime":1,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k","level":"info","message":"auth send jwt","requestID":"bbd0ec9323104af8e6f73d9212c2bb16"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"bbd0ec9323104af8e6f73d9212c2bb16","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bbd0ec9323104af8e6f73d9212c2bb16"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1127,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1127,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.220693,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"bbd0ec9323104af8e6f73d9212c2bb16","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bbd0ec9323104af8e6f73d9212c2bb16","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2516a77dec07c2c343f2a45624c65dc8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2516a77dec07c2c343f2a45624c65dc8","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/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":"2516a77dec07c2c343f2a45624c65dc8"} device-1 | {"level":"info","message":"OPTIONS /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/websocket 200 1ms","method":"OPTIONS","requestID":"2516a77dec07c2c343f2a45624c65dc8","responseTime":1,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bbd0ec9323104af8e6f73d9212c2bb16"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/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":"bbd0ec9323104af8e6f73d9212c2bb16"} device-1 | {"level":"info","message":"POST /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/websocket 200 19ms","method":"POST","requestID":"bbd0ec9323104af8e6f73d9212c2bb16","responseTime":19,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k","level":"info","message":"auth send jwt","requestID":"5b3bcf5240960f78e8941bbdb64f2f7d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"5b3bcf5240960f78e8941bbdb64f2f7d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5b3bcf5240960f78e8941bbdb64f2f7d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1128,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1128,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.215269,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5b3bcf5240960f78e8941bbdb64f2f7d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5b3bcf5240960f78e8941bbdb64f2f7d","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"device 'http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5' connected"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5b3bcf5240960f78e8941bbdb64f2f7d"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5b3bcf5240960f78e8941bbdb64f2f7d"} device-1 | {"level":"info","message":"POST /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/websocket 200 28ms","method":"POST","requestID":"5b3bcf5240960f78e8941bbdb64f2f7d","responseTime":28,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/websocket"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9fbcd4009ee4ff6fc5aa5966bf582268","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9fbcd4009ee4ff6fc5aa5966bf582268","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5? 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":"9fbcd4009ee4ff6fc5aa5966bf582268"} device-1 | {"level":"info","message":"OPTIONS /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5? 200 1ms","method":"OPTIONS","requestID":"9fbcd4009ee4ff6fc5aa5966bf582268","responseTime":1,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k","level":"info","message":"auth send jwt","requestID":"7373a4a96d7bbad494cf3de0a72f620b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7373a4a96d7bbad494cf3de0a72f620b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"7373a4a96d7bbad494cf3de0a72f620b"} device-1 | {"level":"info","message":"device 'http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765' connected"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1129,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1129,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.608449,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7373a4a96d7bbad494cf3de0a72f620b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7373a4a96d7bbad494cf3de0a72f620b","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.010789787Z"}]},"request_id":"747daea5-d170-4986-9c18-8058f7bcef2d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.172606} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7373a4a96d7bbad494cf3de0a72f620b","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6c2521ce-7ea2-49f3-a1f3-60f17030efc9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.1781805} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7373a4a96d7bbad494cf3de0a72f620b","responseTime":3,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"257c599c3e81b434ec24aeaff77c6275","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"257c599c3e81b434ec24aeaff77c6275","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765? 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":"257c599c3e81b434ec24aeaff77c6275"} device-1 | {"level":"info","message":"OPTIONS /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765? 200 1ms","method":"OPTIONS","requestID":"257c599c3e81b434ec24aeaff77c6275","responseTime":1,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k","level":"info","message":"auth send jwt","requestID":"4597000820fcadf4f557be380c71c28f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4597000820fcadf4f557be380c71c28f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4597000820fcadf4f557be380c71c28f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1130,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1130,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.004442,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4597000820fcadf4f557be380c71c28f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4597000820fcadf4f557be380c71c28f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.010789787Z"}]},"request_id":"deff6982-1f22-4cdd-ac3a-c1d939a20ed9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.1949718} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7373a4a96d7bbad494cf3de0a72f620b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"7373a4a96d7bbad494cf3de0a72f620b"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5? 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":"7373a4a96d7bbad494cf3de0a72f620b"} device-1 | {"level":"info","message":"PATCH /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5? 200 40ms","method":"PATCH","requestID":"7373a4a96d7bbad494cf3de0a72f620b","responseTime":40,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.059904726Z"}]},"request_id":"e17345c8-ea4b-485a-9da8-bdfa11365834","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.2037039} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4597000820fcadf4f557be380c71c28f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"86bc78b8-c2c7-42a6-acbe-ea92614b6488","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.211578} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"4597000820fcadf4f557be380c71c28f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.059904726Z"}]},"request_id":"17ed841f-bf48-4c50-800d-b84d5580963a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.2229204} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4597000820fcadf4f557be380c71c28f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4597000820fcadf4f557be380c71c28f"} device-1 | {"level":"info","message":"PATCH /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765? 200 36ms","method":"PATCH","requestID":"4597000820fcadf4f557be380c71c28f","responseTime":36,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765? 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":"4597000820fcadf4f557be380c71c28f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k","level":"info","message":"auth send jwt","requestID":"1932131467a0a84fa5d599181a73105d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1932131467a0a84fa5d599181a73105d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1932131467a0a84fa5d599181a73105d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1131,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1131,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.242836,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1932131467a0a84fa5d599181a73105d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1932131467a0a84fa5d599181a73105d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.010789787Z"}]},"request_id":"bcea2d20-52fa-4ccb-98e4-b484192f41ea","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.245853} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1932131467a0a84fa5d599181a73105d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1932131467a0a84fa5d599181a73105d"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5? 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":"1932131467a0a84fa5d599181a73105d"} device-1 | {"level":"info","message":"GET /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5? 200 16ms","method":"GET","requestID":"1932131467a0a84fa5d599181a73105d","responseTime":16,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k","level":"info","message":"auth send jwt","requestID":"7a4f2971f83d557bf934374d86e6a230"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7a4f2971f83d557bf934374d86e6a230","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a4f2971f83d557bf934374d86e6a230"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1132,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1132,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.023868,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7a4f2971f83d557bf934374d86e6a230","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7a4f2971f83d557bf934374d86e6a230","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.059904726Z"}]},"request_id":"72342b1a-e915-4142-aa5d-4b4a7ec842a6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.2668478} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7a4f2971f83d557bf934374d86e6a230","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a4f2971f83d557bf934374d86e6a230"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765? 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":"7a4f2971f83d557bf934374d86e6a230"} device-1 | {"level":"info","message":"GET /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765? 200 15ms","method":"GET","requestID":"7a4f2971f83d557bf934374d86e6a230","responseTime":15,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k","level":"info","message":"auth send jwt","requestID":"a1a7335f4ef3a76d350d10accd910fce"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a1a7335f4ef3a76d350d10accd910fce","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a1a7335f4ef3a76d350d10accd910fce"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1133,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1133,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.167617,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a1a7335f4ef3a76d350d10accd910fce","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a1a7335f4ef3a76d350d10accd910fce","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Attempting to run experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Attempting to book experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Successfully booked experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60ee3b70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60ee6280-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1134,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1134,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.968568,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"60ee3b70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"60ee3b70-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1135,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1135,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.641878,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"60ee6280-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"60ee6280-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.010789787Z"}]},"request_id":"ee62812b-9feb-4771-9626-8d1868cb7fa1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.3272433} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"60ee3b70-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.059904726Z"}]},"request_id":"5a682f93-a72b-44c4-97b9-d8009550203d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.328569} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"60ee6280-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60ee3b70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5? 200 13ms","method":"GET","requestID":"60ee3b70-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60ee6280-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765? 200 13ms","method":"GET","requestID":"60ee6280-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Setting up experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Successfully set up experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60f7b150-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"60f7d860-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60f7ff70-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Successfully running experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1136,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1136,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.107626,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1137,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1137,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.795419,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"60f7b150-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"60f7b150-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"60f7d860-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"60f7d860-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.010789787Z"}]},"request_id":"b912782e-bd8e-4d18-a4d4-014715eb9869","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.3932195} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.059904726Z"}]},"request_id":"da8a3598-4c21-4484-8620-571469d5d0ae","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.3944304} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"60f7b150-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51334","level":"info","msg":"Received request.","req_id":1138,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"60f7d860-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2f4048a-5515-426e-8868-632d935316bc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.398094} authorization-1 | {"client_addr":"127.0.0.1:51334","level":"info","msg":"Sent response.","req_id":1138,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.553939,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"60f7ff70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","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":"60f7b150-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 15ms","method":"POST","requestID":"60f7ff70-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5? 200 19ms","method":"GET","requestID":"60f7b150-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"60f7d860-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765? 200 19ms","method":"GET","requestID":"60f7d860-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F70f552b3-d368-4d8a-ae7a-69f71b06a675#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F70f552b3-d368-4d8a-ae7a-69f71b06a675","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"49ee0eba-f6d5-4e5d-afb4-15826cb3235f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.4071994} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60fba8f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"318ede86-f9db-43df-8610-5c00889d2c54","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.4074748} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"60f7ff70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"a1a7335f4ef3a76d350d10accd910fce","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"POST /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/signaling 200 26ms","method":"POST","requestID":"60f7ff70-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1139,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60fc4530-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"335c451f-b0b5-4c42-a3ea-31f1486f30a1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.412826} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1139,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.195734,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1140,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"60fba8f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","object_type":"device","rebac_allow":false,"scope_allow":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":"60fba8f0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f5d41cfe-f2e1-4601-b9f1-65baa057f141","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.417024} experiment-1 | {"data":{"experiment":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a1a7335f4ef3a76d350d10accd910fce"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1140,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.271004,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a1a7335f4ef3a76d350d10accd910fce"} experiment-1 | {"level":"info","message":"POST /experiments? 201 141ms","method":"POST","requestID":"a1a7335f4ef3a76d350d10accd910fce","responseTime":141,"status":201,"url":"/experiments?"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"60fc4530-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","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":"60fba8f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"60fc4530-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"POST /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/signaling 200 12ms","method":"POST","requestID":"60fba8f0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"60fdcbd0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k","level":"info","message":"auth send jwt","requestID":"73ab5b4437cede291640f2991f77d85d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"73ab5b4437cede291640f2991f77d85d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73ab5b4437cede291640f2991f77d85d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"60fc4530-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/signaling 200 13ms","method":"POST","requestID":"60fc4530-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1141,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1142,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e033f2e-da60-4d09-b5f3-0ebfbecf333d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.4287376} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1141,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.285164,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1142,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.896503,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"60fdcbd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","object_type":"device","rebac_allow":false,"scope_allow":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":"60fdcbd0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"73ab5b4437cede291640f2991f77d85d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"73ab5b4437cede291640f2991f77d85d","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"60fdcbd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/signaling 200 12ms","method":"POST","requestID":"60fdcbd0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.010789787Z"}]},"request_id":"1a41f0ac-1265-4848-b01a-30a404917766","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.4341025} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"73ab5b4437cede291640f2991f77d85d","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"610015c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"61003cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73ab5b4437cede291640f2991f77d85d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1143,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1143,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.717863,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} device-1 | {"level":"info","message":"GET /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5? 200 17ms","method":"GET","requestID":"73ab5b4437cede291640f2991f77d85d","responseTime":17,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5? 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":"73ab5b4437cede291640f2991f77d85d"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"610015c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"610015c0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1144,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1144,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.744528,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"61003cd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"61003cd0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k","level":"info","message":"auth send jwt","requestID":"b3b7bc08459b6ab5b8f961a1a6ebf90f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b3b7bc08459b6ab5b8f961a1a6ebf90f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.010789787Z"}]},"request_id":"f018eb8b-67c5-48fd-afd2-4fb7f0d35f76","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.4427223} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b3b7bc08459b6ab5b8f961a1a6ebf90f"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"610015c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.059904726Z"}]},"request_id":"434c795a-08e5-4160-8a09-7c779e1cb8ea","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.4435985} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"61003cd0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1145,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1145,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.702058,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b3b7bc08459b6ab5b8f961a1a6ebf90f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b3b7bc08459b6ab5b8f961a1a6ebf90f","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"610015c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5? 200 13ms","method":"GET","requestID":"610015c0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"61003cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765? 200 13ms","method":"GET","requestID":"61003cd0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:39.059904726Z"}]},"request_id":"ff523b73-d643-4075-95eb-3055d8872987","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.450613} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Building connection plan","requestID":"a1a7335f4ef3a76d350d10accd910fce"} 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":"29a165d9-c5ca-4b63-8384-a344ed72aab8"},{"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":"e4630ba5-aade-4f46-8500-827cd4372416"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"badc6413-bb86-405d-b630-cb312bc47710"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a1a7335f4ef3a76d350d10accd910fce"} 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/7453c24b-3dc6-4ae6-a3fa-46b06b34b765"},{"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/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"a1a7335f4ef3a76d350d10accd910fce"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"b3b7bc08459b6ab5b8f961a1a6ebf90f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"610286c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b3b7bc08459b6ab5b8f961a1a6ebf90f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1146,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} device-1 | {"level":"info","message":"GET /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765? 200 11ms","method":"GET","requestID":"b3b7bc08459b6ab5b8f961a1a6ebf90f","responseTime":11,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765? 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":"b3b7bc08459b6ab5b8f961a1a6ebf90f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1146,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.96509,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"610286c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"610286c0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"df6564c2-b6cc-401e-85d6-ae6faf790d19","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.4623737} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8907e012-5be9-4ad7-a010-8b384738f4ee","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.4626625} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"610286c0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"610286c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"610286c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99'","requestID":"610286c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99'","requestID":"610286c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"610286c0-848f-11ef-9233-95baf63f17e0"} 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":"610286c0-848f-11ef-9233-95baf63f17e0","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":"610286c0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a1a7335f4ef3a76d350d10accd910fce"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"610a00d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1147,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"db28ec67-67da-4f86-9bca-fe21c1e960cf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.505649} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1147,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.328148,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"610a00d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"610a00d0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"610a00d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/signaling 200 8ms","method":"POST","requestID":"610a00d0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"610b8770-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1148,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} device-1 | {"device":"7453c24b-3dc6-4ae6-a3fa-46b06b34b765","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"7453c24b-3dc6-4ae6-a3fa-46b06b34b765","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2394a143-7e50-449d-9ffb-c3c173d81b04","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.5176473} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1148,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.90306,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"610b8770-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","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":"dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"610b8770-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"content":{"canTrickle":true},"device":"dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"610b8770-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/signaling 200 12ms","method":"POST","requestID":"610b8770-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 151875042406532796 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:bZb/\r\na=ice-pwd:R4wn1c6kbuDpkXD4zNAba8qh\r\na=ice-options:trickle\r\na=fingerprint:sha-256 49:2B:00:7B:B0:D6:9A:60:26:E0:25:EB:BD:67:20:26:8A:49:24:C2:69:52:0C:3C:D9:DE:85:ED:A6:CF:79:33\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 3851780892727154840 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:mtcz\r\na=ice-pwd:BxLKEixva+5Txs9BJmE0p5fS\r\na=ice-options:trickle\r\na=fingerprint:sha-256 4F:41:DF:F3:B5:8B:7A:11:70:45:ED:AE:0D:D3:AA:70:92:2C:9D:04:CB:B1:E4:C9:7F:86:34:68:23:DC:59:95\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"7453c24b-3dc6-4ae6-a3fa-46b06b34b765","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:3170384614 1 udp 2113937151 e582287c-c21d-47f1-91ce-909efec17b27.local 42823 typ host generation 0 ufrag mtcz network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7453c24b-3dc6-4ae6-a3fa-46b06b34b765","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:953503897 1 udp 1677729535 141.24.211.56 42823 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag mtcz network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"7453c24b-3dc6-4ae6-a3fa-46b06b34b765","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/7453c24b-3dc6-4ae6-a3fa-46b06b34b765'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765'"} device-1 | {"content":{"candidate":"candidate:60455938 1 udp 2113937151 ee8d0de9-f9d3-4a3e-b674-adb5d953effa.local 54699 typ host generation 0 ufrag bZb/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2427575569 1 udp 1677729535 141.24.211.56 54699 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag bZb/ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","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/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5'"} device-1 | {"device":"dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"7453c24b-3dc6-4ae6-a3fa-46b06b34b765","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/8fc7f760-df60-4dea-be51-158e96b18b99' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8fc7f760-df60-4dea-be51-158e96b18b99","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"7453c24b-3dc6-4ae6-a3fa-46b06b34b765","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"97fe4cfe505a0ab9349b59b3b3590409","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"97fe4cfe505a0ab9349b59b3b3590409","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/7453c24b-3dc6-4ae6-a3fa-46b06b34b765"},{"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/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99"}}},"level":"info","message":"received a callback","requestID":"97fe4cfe505a0ab9349b59b3b3590409"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"97fe4cfe505a0ab9349b59b3b3590409","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"97fe4cfe505a0ab9349b59b3b3590409"} device-1 | {"device":"dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"7453c24b-3dc6-4ae6-a3fa-46b06b34b765","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"data":{"peerconnection":"8fc7f760-df60-4dea-be51-158e96b18b99","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"7453c24b-3dc6-4ae6-a3fa-46b06b34b765","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"8fc7f760-df60-4dea-be51-158e96b18b99","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/8fc7f760-df60-4dea-be51-158e96b18b99' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8fc7f760-df60-4dea-be51-158e96b18b99","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2e6183b6f2831a49f6f082d283b15869","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2e6183b6f2831a49f6f082d283b15869","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/7453c24b-3dc6-4ae6-a3fa-46b06b34b765"},{"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/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99"}}},"level":"info","message":"received a callback","requestID":"2e6183b6f2831a49f6f082d283b15869"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6116ab00-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1149,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8fc7f760-df60-4dea-be51-158e96b18b99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5bf7d9b6-d9c1-4852-80ca-1ffe81103173","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.5890815} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1149,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.099905,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6116ab00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99","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":"6116ab00-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6116ab00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99 200 7ms","method":"GET","requestID":"6116ab00-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"2e6183b6f2831a49f6f082d283b15869","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"2e6183b6f2831a49f6f082d283b15869"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"611aa2a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1150,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"690d0822-0cc0-45a8-92ae-91cccfdc126a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.6143646} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1150,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.056845,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"611aa2a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","object_type":"device","rebac_allow":false,"scope_allow":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":"611aa2a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"611aa2a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/signaling 200 7ms","method":"POST","requestID":"611aa2a0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"611c0230-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1151,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ed5fae0b-f440-4ef8-b63c-0821510b6b34","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.6231947} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1151,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.11072,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"611c0230-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","object_type":"device","rebac_allow":false,"scope_allow":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":"611c0230-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"611c0230-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/signaling 200 7ms","method":"POST","requestID":"611c0230-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k","level":"info","message":"auth send jwt","requestID":"bbe746975d8cc63acfd94e6118ba596e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bbe746975d8cc63acfd94e6118ba596e","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675","requestID":"bbe746975d8cc63acfd94e6118ba596e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1152,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1152,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.640499,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"bbe746975d8cc63acfd94e6118ba596e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"bbe746975d8cc63acfd94e6118ba596e","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675","requestID":"bbe746975d8cc63acfd94e6118ba596e"} experiment-1 | {"level":"info","message":"GET /experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675 200 8ms","method":"GET","requestID":"bbe746975d8cc63acfd94e6118ba596e","responseTime":8,"status":200,"url":"/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675 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":"bbe746975d8cc63acfd94e6118ba596e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k","level":"info","message":"auth send jwt","requestID":"bf09abece72d9b32b1e1ca134ca6a434"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bf09abece72d9b32b1e1ca134ca6a434","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675","requestID":"bf09abece72d9b32b1e1ca134ca6a434"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1153,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1153,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.718354,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"bf09abece72d9b32b1e1ca134ca6a434","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bf09abece72d9b32b1e1ca134ca6a434","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Attempting to finish experiment","requestID":"bf09abece72d9b32b1e1ca134ca6a434"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6126d7a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1154,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1154,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.631717,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6126d7a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"6126d7a0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99","device":"7453c24b-3dc6-4ae6-a3fa-46b06b34b765","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99","device":"dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","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/8fc7f760-df60-4dea-be51-158e96b18b99' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8fc7f760-df60-4dea-be51-158e96b18b99","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8fc7f760-df60-4dea-be51-158e96b18b99': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8fc7f760-df60-4dea-be51-158e96b18b99","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"a1416c24-81fa-4ea7-9431-26d12b5be200","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.7026362} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"446676a3-998f-4591-8e11-7bd0a0f40812","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.703494} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"261adb43eb514753216749fed354c82e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"261adb43eb514753216749fed354c82e","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"435379074eed349dacd85f1622e4ce58","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765"},{"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/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99"}}},"level":"info","message":"received a callback","requestID":"261adb43eb514753216749fed354c82e"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"435379074eed349dacd85f1622e4ce58","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"6126d7a0-848f-11ef-9233-95baf63f17e0","responseTime":7,"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":"connected","url":"http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765"},{"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/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99"}}},"level":"info","message":"received a callback","requestID":"435379074eed349dacd85f1622e4ce58"} device-1 | {"data":{"peerconnection":"8fc7f760-df60-4dea-be51-158e96b18b99","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6126d7a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99 204 30ms","method":"DELETE","requestID":"6126d7a0-848f-11ef-9233-95baf63f17e0","responseTime":30,"status":204,"url":"/peerconnections/8fc7f760-df60-4dea-be51-158e96b18b99"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"},"level":"info","message":"Successfully finished experiment","requestID":"bf09abece72d9b32b1e1ca134ca6a434"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"612db570-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1155,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F7453c24b-3dc6-4ae6-a3fa-46b06b34b765","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"549ce942-0f17-4966-bea1-b63fb2b97c32","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.7402318} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1155,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.717632,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"612db570-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"612db570-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"612db570-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/signaling 200 9ms","method":"POST","requestID":"612db570-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"612f8a30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F70f552b3-d368-4d8a-ae7a-69f71b06a675': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F70f552b3-d368-4d8a-ae7a-69f71b06a675","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"7f2d29f0-6d65-47c1-b713-93ff858ec24c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.7485447} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5a0ef475-ba4d-438d-bb2a-f6ac842984bf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.7488222} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"bf09abece72d9b32b1e1ca134ca6a434","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1156,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdc6c6cd2-f69a-45f9-bd65-b0780f242ba5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"daff620a-c885-4526-bd7b-50720c65a46d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.75186} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1156,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.734526,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"612f8a30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"612f8a30-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"612f8a30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/signaling 200 8ms","method":"POST","requestID":"612f8a30-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675","requestID":"bf09abece72d9b32b1e1ca134ca6a434"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.130","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bf09abece72d9b32b1e1ca134ca6a434"} experiment-1 | {"level":"info","message":"DELETE /experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675 204 127ms","method":"DELETE","requestID":"bf09abece72d9b32b1e1ca134ca6a434","responseTime":127,"status":204,"url":"/experiments/70f552b3-d368-4d8a-ae7a-69f71b06a675"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 106ms","method":"POST","requestID":"261adb43eb514753216749fed354c82e","responseTime":106,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.110","http_referrer":"","http_user_agent":"node-fetch","requestID":"261adb43eb514753216749fed354c82e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 106ms","method":"POST","requestID":"435379074eed349dacd85f1622e4ce58","responseTime":106,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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":"435379074eed349dacd85f1622e4ce58"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k","level":"info","message":"auth send jwt","requestID":"af1e92182a16b22b75cd4bb78b55d691"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"af1e92182a16b22b75cd4bb78b55d691","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"af1e92182a16b22b75cd4bb78b55d691"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1157,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1157,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.656501,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +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.707","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6f820f8f7aa39c9efd675b6aa56480aa"} gateway-1 | {"time_local":"07/Oct/2024:09:34:41 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3277","request_time":"0.675","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6f3188a1c774591189ccc288d48f4521"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"af1e92182a16b22b75cd4bb78b55d691","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"af1e92182a16b22b75cd4bb78b55d691","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/7453c24b-3dc6-4ae6-a3fa-46b06b34b765' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/dc6c6cd2-f69a-45f9-bd65-b0780f242ba5' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f782240a-1b0b-42f9-a3cd-8bb4813fad8d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.844971} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"af1e92182a16b22b75cd4bb78b55d691","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7fa7bc56-7a9b-4b46-a2e2-9e9a899e9225","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.848822} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"af1e92182a16b22b75cd4bb78b55d691","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"98473dcb-2d44-4e6a-8fbb-50ebbda4c791","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.859422} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ab95ee5b-f661-43f5-95a2-140fce36d775","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.859532} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"af1e92182a16b22b75cd4bb78b55d691","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.859385222Z"}]},"request_id":"d42e1002-610b-4d86-ba76-deb4bdbf8cfd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.8627608} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"af1e92182a16b22b75cd4bb78b55d691","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"af1e92182a16b22b75cd4bb78b55d691"} device-1 | {"level":"info","message":"POST /devices? 201 49ms","method":"POST","requestID":"af1e92182a16b22b75cd4bb78b55d691","responseTime":49,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.054","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"af1e92182a16b22b75cd4bb78b55d691"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k","level":"info","message":"auth send jwt","requestID":"ad42b01f0b1fd6ce7535fcccf7828bd5"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ad42b01f0b1fd6ce7535fcccf7828bd5","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ad42b01f0b1fd6ce7535fcccf7828bd5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1158,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1158,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.383509,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:41Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ad42b01f0b1fd6ce7535fcccf7828bd5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293681,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4MX0.yLcB3yVPIfwWArG4j3nolPIXQ-QCXbxkYwMLdaAnJ9k"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ad42b01f0b1fd6ce7535fcccf7828bd5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0ace386c-80e3-46ea-b65d-21d5422bbb4c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.8839257} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ad42b01f0b1fd6ce7535fcccf7828bd5","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dbca01e9-792e-4948-bfc7-915438ab8aa2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.887338} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"ad42b01f0b1fd6ce7535fcccf7828bd5","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"8ae3d5dd-5ef2-4407-9f1f-525a7fd2e4b6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.8954823} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b7447244-7180-4512-a387-0d6f7f1bbf3e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.895713} authorization-1 | {"level":"info","message":"POST /relations/update 200 10ms","method":"POST","requestID":"ad42b01f0b1fd6ce7535fcccf7828bd5","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.895452346Z"}]},"request_id":"0137a470-e703-44bd-b0ee-28d520e91ff4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293681.8986216} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ad42b01f0b1fd6ce7535fcccf7828bd5","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ad42b01f0b1fd6ce7535fcccf7828bd5"} device-1 | {"level":"info","message":"POST /devices? 201 31ms","method":"POST","requestID":"ad42b01f0b1fd6ce7535fcccf7828bd5","responseTime":31,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.035","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ad42b01f0b1fd6ce7535fcccf7828bd5"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4e3d38367612a9e2050422dede4c4b03","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4e3d38367612a9e2050422dede4c4b03","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/websocket 200 0ms","method":"OPTIONS","requestID":"4e3d38367612a9e2050422dede4c4b03","responseTime":0,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/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":"4e3d38367612a9e2050422dede4c4b03"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"fa5875bded505d2331dd3a2daceef0a2","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"fa5875bded505d2331dd3a2daceef0a2","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2a891bb6-9364-4f12-a84b-b9f502b80502/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":"fa5875bded505d2331dd3a2daceef0a2"} device-1 | {"level":"info","message":"OPTIONS /devices/2a891bb6-9364-4f12-a84b-b9f502b80502/websocket 200 2ms","method":"OPTIONS","requestID":"fa5875bded505d2331dd3a2daceef0a2","responseTime":2,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4M30.IFHxoD7Z8O8R_v0nh-GZ931xU5QJYDVC_vxXM5H7aPQ","level":"info","message":"auth send jwt","requestID":"4408951cbc454d21af54dcf968d34356"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4408951cbc454d21af54dcf968d34356","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4408951cbc454d21af54dcf968d34356"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4M30.IFHxoD7Z8O8R_v0nh-GZ931xU5QJYDVC_vxXM5H7aPQ","level":"info","message":"auth send jwt","requestID":"97235d6304594e044d562eb5eb59dccc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1159,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:43Z"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"97235d6304594e044d562eb5eb59dccc","responseTime":5,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1159,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.384652,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:43Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"97235d6304594e044d562eb5eb59dccc"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4408951cbc454d21af54dcf968d34356","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293683,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4M30.IFHxoD7Z8O8R_v0nh-GZ931xU5QJYDVC_vxXM5H7aPQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"4408951cbc454d21af54dcf968d34356","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1160,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1160,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.30589,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"97235d6304594e044d562eb5eb59dccc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293683,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4M30.IFHxoD7Z8O8R_v0nh-GZ931xU5QJYDVC_vxXM5H7aPQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"97235d6304594e044d562eb5eb59dccc","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4408951cbc454d21af54dcf968d34356"} device-1 | {"level":"info","message":"POST /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/websocket 200 30ms","method":"POST","requestID":"4408951cbc454d21af54dcf968d34356","responseTime":30,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/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":"4408951cbc454d21af54dcf968d34356"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"97235d6304594e044d562eb5eb59dccc"} device-1 | {"level":"info","message":"POST /devices/2a891bb6-9364-4f12-a84b-b9f502b80502/websocket 200 32ms","method":"POST","requestID":"97235d6304594e044d562eb5eb59dccc","responseTime":32,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/2a891bb6-9364-4f12-a84b-b9f502b80502/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","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":"97235d6304594e044d562eb5eb59dccc"} device-1 | {"level":"info","message":"device 'http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c553127ba9d416fc4b3965c09b1dc4ec","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c553127ba9d416fc4b3965c09b1dc4ec","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7? 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":"c553127ba9d416fc4b3965c09b1dc4ec"} device-1 | {"level":"info","message":"OPTIONS /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7? 200 1ms","method":"OPTIONS","requestID":"c553127ba9d416fc4b3965c09b1dc4ec","responseTime":1,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"99e871fb1a96eacd9de7368e23931508","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"99e871fb1a96eacd9de7368e23931508","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/2a891bb6-9364-4f12-a84b-b9f502b80502? 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":"99e871fb1a96eacd9de7368e23931508"} device-1 | {"level":"info","message":"OPTIONS /devices/2a891bb6-9364-4f12-a84b-b9f502b80502? 200 1ms","method":"OPTIONS","requestID":"99e871fb1a96eacd9de7368e23931508","responseTime":1,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4M30.IFHxoD7Z8O8R_v0nh-GZ931xU5QJYDVC_vxXM5H7aPQ","level":"info","message":"auth send jwt","requestID":"6f2e09ffb97d74a7a6316cc0b3fd396a"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"6f2e09ffb97d74a7a6316cc0b3fd396a","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6f2e09ffb97d74a7a6316cc0b3fd396a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1161,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:43Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4M30.IFHxoD7Z8O8R_v0nh-GZ931xU5QJYDVC_vxXM5H7aPQ","level":"info","message":"auth send jwt","requestID":"afd55c89cabd3ab7901b43c100d2db6e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1161,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.145171,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:43Z"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"afd55c89cabd3ab7901b43c100d2db6e","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f2e09ffb97d74a7a6316cc0b3fd396a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293683,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4M30.IFHxoD7Z8O8R_v0nh-GZ931xU5QJYDVC_vxXM5H7aPQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f2e09ffb97d74a7a6316cc0b3fd396a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"afd55c89cabd3ab7901b43c100d2db6e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1162,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:43Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1162,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.971908,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:43Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"afd55c89cabd3ab7901b43c100d2db6e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293683,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4M30.IFHxoD7Z8O8R_v0nh-GZ931xU5QJYDVC_vxXM5H7aPQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"afd55c89cabd3ab7901b43c100d2db6e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.895452346Z"}]},"request_id":"fa2d58cb-cb44-44d3-867a-7e2c4db098e8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293683.9565837} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6f2e09ffb97d74a7a6316cc0b3fd396a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.859385222Z"}]},"request_id":"65c6d5dd-402e-4d55-9790-b2d33ff863a6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293683.9602382} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"afd55c89cabd3ab7901b43c100d2db6e","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c6ee9a16-a84c-4977-a32e-58f44ff20b78","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293683.96249} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6f2e09ffb97d74a7a6316cc0b3fd396a","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"13eb37bc-5d38-4121-921c-e88a61846532","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293683.967541} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"afd55c89cabd3ab7901b43c100d2db6e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.895452346Z"}]},"request_id":"6201a3ec-cd0a-4d9d-ad0e-3366d321ac5c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293683.970821} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6f2e09ffb97d74a7a6316cc0b3fd396a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6f2e09ffb97d74a7a6316cc0b3fd396a"} gateway-1 | {"time_local":"07/Oct/2024:09:34:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7? HTTP/1.1","status": "200","body_bytes_sent":"998","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":"6f2e09ffb97d74a7a6316cc0b3fd396a"} device-1 | {"level":"info","message":"PATCH /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7? 200 30ms","method":"PATCH","requestID":"6f2e09ffb97d74a7a6316cc0b3fd396a","responseTime":30,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.859385222Z"}]},"request_id":"2d456bf5-1b42-42d2-965b-db8c6c3a1437","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293683.9863946} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"afd55c89cabd3ab7901b43c100d2db6e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"afd55c89cabd3ab7901b43c100d2db6e"} gateway-1 | {"time_local":"07/Oct/2024:09:34:43 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/2a891bb6-9364-4f12-a84b-b9f502b80502? 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":"afd55c89cabd3ab7901b43c100d2db6e"} device-1 | {"level":"info","message":"PATCH /devices/2a891bb6-9364-4f12-a84b-b9f502b80502? 200 40ms","method":"PATCH","requestID":"afd55c89cabd3ab7901b43c100d2db6e","responseTime":40,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s","level":"info","message":"auth send jwt","requestID":"30a2ee850a0dea0dcae500dcbb8ffd6a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"30a2ee850a0dea0dcae500dcbb8ffd6a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"30a2ee850a0dea0dcae500dcbb8ffd6a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1163,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1163,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.318797,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"30a2ee850a0dea0dcae500dcbb8ffd6a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"30a2ee850a0dea0dcae500dcbb8ffd6a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.859385222Z"}]},"request_id":"dd4ff617-5614-4df8-9ab1-762195cabd50","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.0115561} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"30a2ee850a0dea0dcae500dcbb8ffd6a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"30a2ee850a0dea0dcae500dcbb8ffd6a"} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2a891bb6-9364-4f12-a84b-b9f502b80502? 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":"30a2ee850a0dea0dcae500dcbb8ffd6a"} device-1 | {"level":"info","message":"GET /devices/2a891bb6-9364-4f12-a84b-b9f502b80502? 200 14ms","method":"GET","requestID":"30a2ee850a0dea0dcae500dcbb8ffd6a","responseTime":14,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s","level":"info","message":"auth send jwt","requestID":"96aef6532030d2c90142a1c088bba93d"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"96aef6532030d2c90142a1c088bba93d","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"96aef6532030d2c90142a1c088bba93d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1164,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1164,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.553801,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"96aef6532030d2c90142a1c088bba93d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"96aef6532030d2c90142a1c088bba93d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.895452346Z"}]},"request_id":"3ee36fd5-f667-4f50-95fe-908fe33e0927","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.0326562} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"96aef6532030d2c90142a1c088bba93d","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"96aef6532030d2c90142a1c088bba93d"} device-1 | {"level":"info","message":"GET /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7? 200 15ms","method":"GET","requestID":"96aef6532030d2c90142a1c088bba93d","responseTime":15,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7? 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":"96aef6532030d2c90142a1c088bba93d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s","level":"info","message":"auth send jwt","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1908d02d87fd7104a3457b9eb1dec7bc","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1165,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1165,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.179487,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1908d02d87fd7104a3457b9eb1dec7bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1908d02d87fd7104a3457b9eb1dec7bc","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Attempting to run experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Attempting to book experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Successfully booked experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"62949870-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6294e690-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1166,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1167,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1166,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.928545,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62949870-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"62949870-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1167,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.630835,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6294e690-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6294e690-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.859385222Z"}]},"request_id":"7560d4e4-a46b-4e3d-9de1-b1dd789d2146","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.094757} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"62949870-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.895452346Z"}]},"request_id":"2faccd4c-9a7e-4145-aebb-abb1676c9e3a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.0953126} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6294e690-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"62949870-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/2a891bb6-9364-4f12-a84b-b9f502b80502? 200 14ms","method":"GET","requestID":"62949870-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6294e690-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7? 200 13ms","method":"GET","requestID":"6294e690-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Setting up experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Successfully locked booking for experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Attempting to update booking for experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Successfully updated booking for experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Successfully set up experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"629f6de0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"629fbc00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"629fe310-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Successfully running experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1168,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1168,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.036876,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1169,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"629f6de0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"629f6de0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1169,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.631819,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51334","level":"info","msg":"Received request.","req_id":1170,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"629fbc00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"629fbc00-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51334","level":"info","msg":"Sent response.","req_id":1170,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.561191,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a88d98eb-0d4f-409a-8bed-434bc9691fd0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.1661184} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"629fe310-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","object_type":"device","rebac_allow":false,"scope_allow":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":"629fe310-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.859385222Z"}]},"request_id":"3f08e083-5ecf-4281-badf-ae29de9b9258","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.1689708} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"629f6de0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"629fe310-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.895452346Z"}]},"request_id":"7ebe3009-e82a-4bad-b472-608e5b1ca868","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.170919} device-1 | {"level":"info","message":"POST /devices/2a891bb6-9364-4f12-a84b-b9f502b80502/signaling 200 10ms","method":"POST","requestID":"629fe310-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"629fbc00-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"62a205f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"629f6de0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1171,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} device-1 | {"level":"info","message":"GET /devices/2a891bb6-9364-4f12-a84b-b9f502b80502? 200 20ms","method":"GET","requestID":"629f6de0-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"629fbc00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7? 200 19ms","method":"GET","requestID":"629fbc00-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6b3dcc3-40cf-4383-9775-48acda4c0a94","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.180171} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"62a2f050-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1171,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.136872,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62a205f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","object_type":"device","rebac_allow":false,"scope_allow":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":"62a205f0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3fd89c5e-0b42-4032-bfc7-193abae5d7a3#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3fd89c5e-0b42-4032-bfc7-193abae5d7a3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"7ec07c9b-5ddc-4f14-ab45-f952bdde8898","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.1827893} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"71050b49-4881-4f8d-bede-8d0ff578e496","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.1830847} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"62a205f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/signaling 200 10ms","method":"POST","requestID":"62a205f0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"1908d02d87fd7104a3457b9eb1dec7bc","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1172,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8733124b-c9e4-4019-b281-79db0f0b52ac","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.1869867} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1172,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.772775,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62a2f050-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","object_type":"device","rebac_allow":false,"scope_allow":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":"62a2f050-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"62a2f050-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/2a891bb6-9364-4f12-a84b-b9f502b80502/signaling 200 9ms","method":"POST","requestID":"62a2f050-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"62a4c510-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"1908d02d87fd7104a3457b9eb1dec7bc","responseTime":150,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1173,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8b68047f-787b-4f2b-a1ab-0ff893866eb8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.1975276} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1173,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.34634,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s","level":"info","message":"auth send jwt","requestID":"d31f1b25b14cc9109ad81e0771d531ae"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62a4c510-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","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 2ms","method":"GET","requestID":"d31f1b25b14cc9109ad81e0771d531ae","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"62a4c510-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d31f1b25b14cc9109ad81e0771d531ae"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"62a4c510-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/signaling 200 9ms","method":"POST","requestID":"62a4c510-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1174,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1174,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.848073,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d31f1b25b14cc9109ad81e0771d531ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"62a672c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d31f1b25b14cc9109ad81e0771d531ae","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"62a699d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1175,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1175,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.626582,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62a672c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"62a672c0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1176,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1176,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.685663,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62a699d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"62a699d0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.859385222Z"}]},"request_id":"148f306b-8801-4982-8ea6-8e980d5442d7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.2095299} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d31f1b25b14cc9109ad81e0771d531ae","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.859385222Z"}]},"request_id":"4604db8a-beab-4edf-b80c-854b589db269","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.2109642} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"62a672c0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d31f1b25b14cc9109ad81e0771d531ae"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.895452346Z"}]},"request_id":"7749ff0b-728e-494e-a714-b3f300142670","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.2128003} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/2a891bb6-9364-4f12-a84b-b9f502b80502? 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":"d31f1b25b14cc9109ad81e0771d531ae"} device-1 | {"level":"info","message":"GET /devices/2a891bb6-9364-4f12-a84b-b9f502b80502? 200 13ms","method":"GET","requestID":"d31f1b25b14cc9109ad81e0771d531ae","responseTime":13,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"62a699d0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"62a672c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/2a891bb6-9364-4f12-a84b-b9f502b80502? 200 13ms","method":"GET","requestID":"62a672c0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s","level":"info","message":"auth send jwt","requestID":"0fd3be761b2556a0bf9069ef6ad8f97e"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"62a699d0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"0fd3be761b2556a0bf9069ef6ad8f97e","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"GET /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7? 200 13ms","method":"GET","requestID":"62a699d0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"0fd3be761b2556a0bf9069ef6ad8f97e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Building connection plan","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} 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":"e7c73d50-da42-4e30-9629-4921d24aa672"},{"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":"63b9f872-2360-41bc-a14f-d3cf21de9264"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"0df45ab6-b479-47a3-aef0-9ad1b5667197"}]},"level":"info","message":"Built pairwise service configurations","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} 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/2a891bb6-9364-4f12-a84b-b9f502b80502"},{"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/21eaede8-566e-4e8f-afe8-1402aeabfae7"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"62a8e3c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1177,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1177,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.66363,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0fd3be761b2556a0bf9069ef6ad8f97e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"0fd3be761b2556a0bf9069ef6ad8f97e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1178,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1178,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.534695,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62a8e3c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"62a8e3c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:41.895452346Z"}]},"request_id":"1b7c27a2-8406-4d8c-acba-f1ac68dfe66b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.225204} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0fd3be761b2556a0bf9069ef6ad8f97e","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"0fd3be761b2556a0bf9069ef6ad8f97e"} device-1 | {"level":"info","message":"GET /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7? 200 10ms","method":"GET","requestID":"0fd3be761b2556a0bf9069ef6ad8f97e","responseTime":10,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7? 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":"0fd3be761b2556a0bf9069ef6ad8f97e"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"397e54ad-f45d-4c36-95f5-b5d7b8f27323","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.230097} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"58e2052b-9aec-43bf-9af6-c7899d73ae92","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.2302983} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"62a8e3c0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"62a8e3c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"62a8e3c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2'","requestID":"62a8e3c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2'","requestID":"62a8e3c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"62a8e3c0-848f-11ef-9233-95baf63f17e0"} 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":"62a8e3c0-848f-11ef-9233-95baf63f17e0","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":"62a8e3c0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"1908d02d87fd7104a3457b9eb1dec7bc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"62b0abf0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1179,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} device-1 | {"device":"2a891bb6-9364-4f12-a84b-b9f502b80502","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"2a891bb6-9364-4f12-a84b-b9f502b80502","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f485e67f-7fd7-4e0d-ab7b-768473891fb7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.276011} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1179,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.424508,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62b0abf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","object_type":"device","rebac_allow":false,"scope_allow":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":"62b0abf0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"62b0abf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/2a891bb6-9364-4f12-a84b-b9f502b80502/signaling 200 8ms","method":"POST","requestID":"62b0abf0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"62b23290-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1180,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e0a7e12b-450b-4098-bbfa-b1ae0ac33e14","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.285081} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1180,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.099225,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62b23290-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","object_type":"device","rebac_allow":false,"scope_allow":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":"62b23290-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"62b23290-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/signaling 200 7ms","method":"POST","requestID":"62b23290-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/signaling"} device-1 | {"device":"21eaede8-566e-4e8f-afe8-1402aeabfae7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"21eaede8-566e-4e8f-afe8-1402aeabfae7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 714951904245276204 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:H22J\r\na=ice-pwd:hkSj297By4tOkh21fhglcNDq\r\na=ice-options:trickle\r\na=fingerprint:sha-256 00:FB:D1:ED:B4:0F:E1:C3:E7:2C:B6:FC:20:AF:E0:A3:85:88:F6:05:8B:4C:7A:91:49:BE:89:93:C7:D3:61:C4\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"21eaede8-566e-4e8f-afe8-1402aeabfae7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 3080336778549853052 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:zER6\r\na=ice-pwd:Vqkp0SBZVvh9nzQVqRjpMLlX\r\na=ice-options:trickle\r\na=fingerprint:sha-256 9B:F5:A0:C7:B1:C6:9F:A6:D7:94:B5:F0:52:6C:55:5B:C5:36:CF:1F:6D:E2:60:2F:1B:AD:C3:61:1B:E7:DD:61\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"2a891bb6-9364-4f12-a84b-b9f502b80502","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1535141328 1 udp 2113937151 42b84d9c-e46f-4566-b436-11fe5976b94f.local 40062 typ host generation 0 ufrag zER6 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2a891bb6-9364-4f12-a84b-b9f502b80502","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3752660911 1 udp 1677729535 141.24.211.56 40062 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag zER6 network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"2a891bb6-9364-4f12-a84b-b9f502b80502","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/2a891bb6-9364-4f12-a84b-b9f502b80502'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502'"} device-1 | {"content":{"candidate":"candidate:3740730692 1 udp 2113937151 2e38c069-929d-4fa7-b3d0-615a3a765a45.local 51127 typ host generation 0 ufrag H22J network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"21eaede8-566e-4e8f-afe8-1402aeabfae7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1524264763 1 udp 1677729535 141.24.211.56 51127 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag H22J network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"21eaede8-566e-4e8f-afe8-1402aeabfae7","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/21eaede8-566e-4e8f-afe8-1402aeabfae7'"} device-1 | {"device":"21eaede8-566e-4e8f-afe8-1402aeabfae7","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/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"21eaede8-566e-4e8f-afe8-1402aeabfae7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"2a891bb6-9364-4f12-a84b-b9f502b80502","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"2a891bb6-9364-4f12-a84b-b9f502b80502","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d4f95a6a2b722a2e951cd432fba358f9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d4f95a6a2b722a2e951cd432fba358f9","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"new","url":"http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502"},{"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/21eaede8-566e-4e8f-afe8-1402aeabfae7"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2"}}},"level":"info","message":"received a callback","requestID":"d4f95a6a2b722a2e951cd432fba358f9"} device-1 | {"device":"21eaede8-566e-4e8f-afe8-1402aeabfae7","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"2a891bb6-9364-4f12-a84b-b9f502b80502","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":"d4f95a6a2b722a2e951cd432fba358f9","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"d4f95a6a2b722a2e951cd432fba358f9"} device-1 | {"data":{"peerconnection":"11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"2a891bb6-9364-4f12-a84b-b9f502b80502","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","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/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ee7e4551e2732dd751b3bb1baeadcb8d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ee7e4551e2732dd751b3bb1baeadcb8d","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/2a891bb6-9364-4f12-a84b-b9f502b80502"},{"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/21eaede8-566e-4e8f-afe8-1402aeabfae7"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2"}}},"level":"info","message":"received a callback","requestID":"ee7e4551e2732dd751b3bb1baeadcb8d"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"62be4080-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1181,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2ed439a2-96a6-446f-b56d-2d081960372a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.3654845} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1181,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.59003,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62be4080-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","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":"62be4080-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"62be4080-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2 200 9ms","method":"GET","requestID":"62be4080-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 32ms","method":"POST","requestID":"ee7e4551e2732dd751b3bb1baeadcb8d","responseTime":32,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"ee7e4551e2732dd751b3bb1baeadcb8d"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"62c2ad50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1182,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3edd35f8-8885-4464-8a83-4a0eb3deb6f4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.3934155} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1182,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.060314,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62c2ad50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"62c2ad50-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"62c2ad50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/2a891bb6-9364-4f12-a84b-b9f502b80502/signaling 200 8ms","method":"POST","requestID":"62c2ad50-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"62c433f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1183,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a065b41-a190-4bd3-b910-c2b3282c986c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.4028177} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1183,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.193192,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62c433f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","object_type":"device","rebac_allow":false,"scope_allow":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":"62c433f0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"62c433f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/signaling 200 7ms","method":"POST","requestID":"62c433f0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s","level":"info","message":"auth send jwt","requestID":"82d29cf2ff03cb533a861cffd5e604a6"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"82d29cf2ff03cb533a861cffd5e604a6","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3","requestID":"82d29cf2ff03cb533a861cffd5e604a6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1184,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1184,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.674613,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"82d29cf2ff03cb533a861cffd5e604a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"82d29cf2ff03cb533a861cffd5e604a6","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3","requestID":"82d29cf2ff03cb533a861cffd5e604a6"} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3 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":"82d29cf2ff03cb533a861cffd5e604a6"} experiment-1 | {"level":"info","message":"GET /experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3 200 10ms","method":"GET","requestID":"82d29cf2ff03cb533a861cffd5e604a6","responseTime":10,"status":200,"url":"/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s","level":"info","message":"auth send jwt","requestID":"3094d533198731b3c05616f288df422f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"3094d533198731b3c05616f288df422f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3","requestID":"3094d533198731b3c05616f288df422f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1185,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1185,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.694639,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3094d533198731b3c05616f288df422f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"3094d533198731b3c05616f288df422f","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Attempting to finish experiment","requestID":"3094d533198731b3c05616f288df422f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"62ce9430-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1186,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1186,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.074441,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62ce9430-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"62ce9430-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","device":"2a891bb6-9364-4f12-a84b-b9f502b80502","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","device":"21eaede8-566e-4e8f-afe8-1402aeabfae7","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/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F11585e2e-b3e0-4c0e-be57-eb7793c0d8c2': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"81e9413c-1670-485e-827b-6dfb6f9eaac5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.4887695} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"44ec89cc-742c-423d-bf54-223397e7b85e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.4889736} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"353919844fd929e5bd06d52bbff3e098","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"353919844fd929e5bd06d52bbff3e098","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"62ce9430-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e17c98997eeefcff1bfe3a13e217f7cf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/2a891bb6-9364-4f12-a84b-b9f502b80502"},{"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/21eaede8-566e-4e8f-afe8-1402aeabfae7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2"}}},"level":"info","message":"received a callback","requestID":"353919844fd929e5bd06d52bbff3e098"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e17c98997eeefcff1bfe3a13e217f7cf","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":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502"},{"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/21eaede8-566e-4e8f-afe8-1402aeabfae7"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2"}}},"level":"info","message":"received a callback","requestID":"e17c98997eeefcff1bfe3a13e217f7cf"} device-1 | {"data":{"peerconnection":"11585e2e-b3e0-4c0e-be57-eb7793c0d8c2","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"62ce9430-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2 204 42ms","method":"DELETE","requestID":"62ce9430-848f-11ef-9233-95baf63f17e0","responseTime":42,"status":204,"url":"/peerconnections/11585e2e-b3e0-4c0e-be57-eb7793c0d8c2"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"},"level":"info","message":"Successfully finished experiment","requestID":"3094d533198731b3c05616f288df422f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"62d8a650-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1187,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F2a891bb6-9364-4f12-a84b-b9f502b80502","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c01ca7ef-dba2-43f8-bdb1-3377ef904601","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.5383985} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1187,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.099929,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62d8a650-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"62d8a650-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"62d8a650-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/2a891bb6-9364-4f12-a84b-b9f502b80502/signaling 200 11ms","method":"POST","requestID":"62d8a650-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/2a891bb6-9364-4f12-a84b-b9f502b80502/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"62daa220-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3fd89c5e-0b42-4032-bfc7-193abae5d7a3': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3fd89c5e-0b42-4032-bfc7-193abae5d7a3","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"1d264517-34f7-4f76-b198-687a835905cd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.5466638} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"81491e12-3170-43ef-aa95-df34a0be509e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.5468564} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"3094d533198731b3c05616f288df422f","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1188,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F21eaede8-566e-4e8f-afe8-1402aeabfae7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1b3541c2-d020-4d8a-9bea-0bcc4d91aaf0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.55114} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1188,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.904531,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62daa220-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"62daa220-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"62daa220-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/signaling 200 9ms","method":"POST","requestID":"62daa220-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/21eaede8-566e-4e8f-afe8-1402aeabfae7/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3","requestID":"3094d533198731b3c05616f288df422f"} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3 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":"3094d533198731b3c05616f288df422f"} experiment-1 | {"level":"info","message":"DELETE /experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3 204 154ms","method":"DELETE","requestID":"3094d533198731b3c05616f288df422f","responseTime":154,"status":204,"url":"/experiments/3fd89c5e-0b42-4032-bfc7-193abae5d7a3"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"353919844fd929e5bd06d52bbff3e098","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"353919844fd929e5bd06d52bbff3e098"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"e17c98997eeefcff1bfe3a13e217f7cf","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"e17c98997eeefcff1bfe3a13e217f7cf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s","level":"info","message":"auth send jwt","requestID":"726554868bffd940d2210a7d1e068fcf"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"726554868bffd940d2210a7d1e068fcf","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"726554868bffd940d2210a7d1e068fcf"} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +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.712","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"65ea0c335e8a6f4703f414a034e50796"} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +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.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":"55694e0b599a26f90e60649932bcf601"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1189,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1189,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.896875,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"726554868bffd940d2210a7d1e068fcf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"726554868bffd940d2210a7d1e068fcf","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/21eaede8-566e-4e8f-afe8-1402aeabfae7' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/2a891bb6-9364-4f12-a84b-b9f502b80502' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"242252d8-d167-4afd-aea7-b83642a64889","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.6385803} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"726554868bffd940d2210a7d1e068fcf","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4248938c-a3c4-4a6b-8a0e-6d73c6f2ed2c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.6424499} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"726554868bffd940d2210a7d1e068fcf","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"613da851-ce99-43c2-83ba-cce186fa43a2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.6526473} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c8df01c7-9bc5-425d-a337-812fe6c5da19","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.652746} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"726554868bffd940d2210a7d1e068fcf","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.652618394Z"}]},"request_id":"0d680de7-4cca-4129-8675-bde681f7a9bc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.6562414} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"726554868bffd940d2210a7d1e068fcf","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"726554868bffd940d2210a7d1e068fcf"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"726554868bffd940d2210a7d1e068fcf","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:44 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"726554868bffd940d2210a7d1e068fcf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s","level":"info","message":"auth send jwt","requestID":"7d16cfaa6636122b8d0ffdeee3025556"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7d16cfaa6636122b8d0ffdeee3025556","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"7d16cfaa6636122b8d0ffdeee3025556"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1190,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1190,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.633083,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:44Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d16cfaa6636122b8d0ffdeee3025556","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293684,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NH0.gkdhYT83eP_GRVAwtDIDZRNcNtTCUviHVjjDGANJS-s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7d16cfaa6636122b8d0ffdeee3025556","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"026b7589-e459-4355-bf34-de6c00b435c8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.680345} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7d16cfaa6636122b8d0ffdeee3025556","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a8f529e-a957-4f4b-9c82-5df46152111b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.6844077} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"7d16cfaa6636122b8d0ffdeee3025556","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"c6e6a7b7-6ce2-4ba2-ad7c-24bc65556e2c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.701343} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10711fe3-9f38-49fa-a788-78e67a4a873f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.7015269} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"7d16cfaa6636122b8d0ffdeee3025556","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.701314369Z"}]},"request_id":"c605aba3-3e23-4dd0-ac69-158140b43657","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293684.705198} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7d16cfaa6636122b8d0ffdeee3025556","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7d16cfaa6636122b8d0ffdeee3025556"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7d16cfaa6636122b8d0ffdeee3025556"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"7d16cfaa6636122b8d0ffdeee3025556","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NX0.m0v1ZBY82qD8qa6KU2lTrHetSBN_kO6JVEDL0bJwBxI","level":"info","message":"auth send jwt","requestID":"93cdf7a1b4ad09faca5575f07f745185"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"93cdf7a1b4ad09faca5575f07f745185","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"93cdf7a1b4ad09faca5575f07f745185"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1191,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1191,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.058485,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"93cdf7a1b4ad09faca5575f07f745185","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293685,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NX0.m0v1ZBY82qD8qa6KU2lTrHetSBN_kO6JVEDL0bJwBxI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"93cdf7a1b4ad09faca5575f07f745185","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.701314369Z"}]},"request_id":"444f5e47-3a5d-42c6-b617-0524a4b37207","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293685.1914976} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"93cdf7a1b4ad09faca5575f07f745185","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"469f88b7-863c-4b9e-a21c-2e6450c2c5ea","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293685.1959012} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"93cdf7a1b4ad09faca5575f07f745185","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.701314369Z"}]},"request_id":"a53bb62b-1e3d-41b8-896c-e547778f72bf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293685.206662} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"93cdf7a1b4ad09faca5575f07f745185","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"93cdf7a1b4ad09faca5575f07f745185"} device-1 | {"level":"info","message":"PATCH /devices/49283045-c771-4c6d-bcab-ba9f31739e25 200 27ms","method":"PATCH","requestID":"93cdf7a1b4ad09faca5575f07f745185","responseTime":27,"status":200,"url":"/devices/49283045-c771-4c6d-bcab-ba9f31739e25"} gateway-1 | {"time_local":"07/Oct/2024:09:34:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/49283045-c771-4c6d-bcab-ba9f31739e25 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"93cdf7a1b4ad09faca5575f07f745185"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NX0.m0v1ZBY82qD8qa6KU2lTrHetSBN_kO6JVEDL0bJwBxI","level":"info","message":"auth send jwt","requestID":"21a591954834d5f7a9beeae18e19b4be"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"21a591954834d5f7a9beeae18e19b4be","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"21a591954834d5f7a9beeae18e19b4be"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1192,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:45Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1192,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.034782,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:45Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"21a591954834d5f7a9beeae18e19b4be","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293685,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4NX0.m0v1ZBY82qD8qa6KU2lTrHetSBN_kO6JVEDL0bJwBxI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"21a591954834d5f7a9beeae18e19b4be","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"21a591954834d5f7a9beeae18e19b4be"} gateway-1 | {"time_local":"07/Oct/2024:09:34:45 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/49283045-c771-4c6d-bcab-ba9f31739e25/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.9","requestID":"21a591954834d5f7a9beeae18e19b4be"} device-1 | {"level":"info","message":"POST /devices/49283045-c771-4c6d-bcab-ba9f31739e25/websocket 200 16ms","method":"POST","requestID":"21a591954834d5f7a9beeae18e19b4be","responseTime":16,"status":200,"url":"/devices/49283045-c771-4c6d-bcab-ba9f31739e25/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"493f90fd0c2da557b1783ae2510a7f07","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"493f90fd0c2da557b1783ae2510a7f07","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e0460c3d-2851-46be-a9da-24daeca61f9d/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":"493f90fd0c2da557b1783ae2510a7f07"} device-1 | {"level":"info","message":"OPTIONS /devices/e0460c3d-2851-46be-a9da-24daeca61f9d/websocket 200 1ms","method":"OPTIONS","requestID":"493f90fd0c2da557b1783ae2510a7f07","responseTime":1,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0","level":"info","message":"auth send jwt","requestID":"007991c7eec0c3d6a17fd1733d3e58a5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"007991c7eec0c3d6a17fd1733d3e58a5","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"007991c7eec0c3d6a17fd1733d3e58a5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1193,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1193,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.486264,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"007991c7eec0c3d6a17fd1733d3e58a5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293686,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"007991c7eec0c3d6a17fd1733d3e58a5","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"007991c7eec0c3d6a17fd1733d3e58a5"} gateway-1 | {"time_local":"07/Oct/2024:09:34:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e0460c3d-2851-46be-a9da-24daeca61f9d/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":"007991c7eec0c3d6a17fd1733d3e58a5"} device-1 | {"level":"info","message":"POST /devices/e0460c3d-2851-46be-a9da-24daeca61f9d/websocket 200 23ms","method":"POST","requestID":"007991c7eec0c3d6a17fd1733d3e58a5","responseTime":23,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"875d568406f19cae9a8a40ce71b04c76","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"875d568406f19cae9a8a40ce71b04c76","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e0460c3d-2851-46be-a9da-24daeca61f9d? 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":"875d568406f19cae9a8a40ce71b04c76"} device-1 | {"level":"info","message":"OPTIONS /devices/e0460c3d-2851-46be-a9da-24daeca61f9d? 200 1ms","method":"OPTIONS","requestID":"875d568406f19cae9a8a40ce71b04c76","responseTime":1,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0","level":"info","message":"auth send jwt","requestID":"310241037fe079ab5f9e30bf595227a2"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"310241037fe079ab5f9e30bf595227a2","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"310241037fe079ab5f9e30bf595227a2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1194,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1194,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.209917,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"310241037fe079ab5f9e30bf595227a2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293686,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"310241037fe079ab5f9e30bf595227a2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.652618394Z"}]},"request_id":"af024e68-c776-478f-b632-0f18f6b2219a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293686.8072736} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"310241037fe079ab5f9e30bf595227a2","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"94123ff7-f586-40c2-a0ed-61f8dc03015c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293686.814138} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"310241037fe079ab5f9e30bf595227a2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.652618394Z"}]},"request_id":"16012d15-d9dc-43f3-957d-ca1c03a007dc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293686.8296542} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"310241037fe079ab5f9e30bf595227a2","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"310241037fe079ab5f9e30bf595227a2"} device-1 | {"level":"info","message":"PATCH /devices/e0460c3d-2851-46be-a9da-24daeca61f9d? 200 38ms","method":"PATCH","requestID":"310241037fe079ab5f9e30bf595227a2","responseTime":38,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e0460c3d-2851-46be-a9da-24daeca61f9d? 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":"310241037fe079ab5f9e30bf595227a2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0","level":"info","message":"auth send jwt","requestID":"7472e1e73a80808d50894ef113a81a86"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7472e1e73a80808d50894ef113a81a86","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7472e1e73a80808d50894ef113a81a86"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1195,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1195,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.885737,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7472e1e73a80808d50894ef113a81a86","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293686,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7472e1e73a80808d50894ef113a81a86","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.652618394Z"}]},"request_id":"eef15d9a-8e52-44ee-94c8-e7eac4e910cb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293686.8579714} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7472e1e73a80808d50894ef113a81a86","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7472e1e73a80808d50894ef113a81a86"} gateway-1 | {"time_local":"07/Oct/2024:09:34:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e0460c3d-2851-46be-a9da-24daeca61f9d? 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":"7472e1e73a80808d50894ef113a81a86"} device-1 | {"level":"info","message":"GET /devices/e0460c3d-2851-46be-a9da-24daeca61f9d? 200 18ms","method":"GET","requestID":"7472e1e73a80808d50894ef113a81a86","responseTime":18,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0","level":"info","message":"auth send jwt","requestID":"3a4222522b589b306c73a2ac19dd0487"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3a4222522b589b306c73a2ac19dd0487","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3a4222522b589b306c73a2ac19dd0487"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1196,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1196,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.208363,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3a4222522b589b306c73a2ac19dd0487","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293686,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3a4222522b589b306c73a2ac19dd0487","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.701314369Z"}]},"request_id":"d57ab60c-7581-466a-9805-8624905c834d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293686.883848} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"3a4222522b589b306c73a2ac19dd0487","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3a4222522b589b306c73a2ac19dd0487"} gateway-1 | {"time_local":"07/Oct/2024:09:34:46 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/49283045-c771-4c6d-bcab-ba9f31739e25? 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":"3a4222522b589b306c73a2ac19dd0487"} device-1 | {"level":"info","message":"GET /devices/49283045-c771-4c6d-bcab-ba9f31739e25? 200 16ms","method":"GET","requestID":"3a4222522b589b306c73a2ac19dd0487","responseTime":16,"status":200,"url":"/devices/49283045-c771-4c6d-bcab-ba9f31739e25?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0","level":"info","message":"auth send jwt","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1197,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1197,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.140808,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293686,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Attempting to run experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Attempting to book experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Successfully booked experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"64468e30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6446dc50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1198,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1199,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1198,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.67875,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"64468e30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293686,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"64468e30-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1199,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.765807,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:46Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6446dc50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293686,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6446dc50-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.652618394Z"}]},"request_id":"f845e8e7-9b12-4da0-9851-dbc6a6f72a38","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293686.939462} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"64468e30-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.701314369Z"}]},"request_id":"228df808-c795-4e58-bb57-70ee7432565b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293686.9401271} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6446dc50-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"64468e30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e0460c3d-2851-46be-a9da-24daeca61f9d? 200 15ms","method":"GET","requestID":"64468e30-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6446dc50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/49283045-c771-4c6d-bcab-ba9f31739e25? 200 15ms","method":"GET","requestID":"6446dc50-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/49283045-c771-4c6d-bcab-ba9f31739e25?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Setting up experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Successfully locked booking for experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Attempting to update booking for experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Successfully updated booking for experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Successfully set up experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"64518ab0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6451d8d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1200,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:47Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"64524e00-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1200,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.382413,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"64518ab0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293686,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Successfully running experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"64518ab0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1201,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1201,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.261206,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6451d8d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293686,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6451d8d0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1202,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3ff2b7e8-8040-4468-850b-fa751e04aa07","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.0176454} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.652618394Z"}]},"request_id":"ad53d43f-1afa-4766-8f8d-d7f844d0aa39","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.018329} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"64518ab0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1202,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.362839,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"64524e00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","object_type":"device","rebac_allow":false,"scope_allow":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":"64524e00-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.701314369Z"}]},"request_id":"5e1925bf-b232-492b-854f-6b46a4569648","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.0199869} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"6451d8d0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"64518ab0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e0460c3d-2851-46be-a9da-24daeca61f9d? 200 26ms","method":"GET","requestID":"64518ab0-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"64524e00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e0460c3d-2851-46be-a9da-24daeca61f9d/signaling 200 22ms","method":"POST","requestID":"64524e00-848f-11ef-9233-95baf63f17e0","responseTime":22,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6451d8d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/49283045-c771-4c6d-bcab-ba9f31739e25? 200 27ms","method":"GET","requestID":"6451d8d0-848f-11ef-9233-95baf63f17e0","responseTime":27,"status":200,"url":"/devices/49283045-c771-4c6d-bcab-ba9f31739e25?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"645645a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"645693c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F12e8e870-db05-4bbc-9220-7656080d35c1#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F12e8e870-db05-4bbc-9220-7656080d35c1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"a9f95e6f-8d9c-477c-851b-af6524dc2014","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.036065} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cae1be36-fd9a-4592-9398-8ae8b428f1e8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.0363817} authorization-1 | {"level":"info","message":"POST /relations/update 200 27ms","method":"POST","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb","responseTime":27,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1203,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1204,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0f97dfef-af73-478f-87e4-098db82de9b0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.0433004} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1203,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.902189,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"645645a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","object_type":"device","rebac_allow":false,"scope_allow":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":"645645a0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2b23f89-abc5-4660-972e-f7dbccda6a7a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.046244} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1204,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.886538,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"645693c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","object_type":"device","rebac_allow":false,"scope_allow":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":"645693c0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"645645a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/49283045-c771-4c6d-bcab-ba9f31739e25/signaling 200 17ms","method":"POST","requestID":"645645a0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/49283045-c771-4c6d-bcab-ba9f31739e25/signaling"} gateway-1 | {"time_local":"07/Oct/2024:09:34:47 +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":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 158ms","method":"POST","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb","responseTime":158,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"645693c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e0460c3d-2851-46be-a9da-24daeca61f9d/signaling 200 18ms","method":"POST","requestID":"645693c0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6459a100-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4N30.LizM6WxZf_g66uqzHtYStTagapksrT8kRrCsj9Zc8v4","level":"info","message":"auth send jwt","requestID":"dcfd20ac76e7bec872a11a67fbca880c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"dcfd20ac76e7bec872a11a67fbca880c","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"dcfd20ac76e7bec872a11a67fbca880c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1205,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1206,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1206,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.816713,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"dcfd20ac76e7bec872a11a67fbca880c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293687,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4N30.LizM6WxZf_g66uqzHtYStTagapksrT8kRrCsj9Zc8v4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"dcfd20ac76e7bec872a11a67fbca880c","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2e0d148-c21e-452a-8d94-cfa8b6aaec61","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.0611684} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1205,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.950443,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6459a100-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","object_type":"device","rebac_allow":false,"scope_allow":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":"6459a100-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.652618394Z"}]},"request_id":"22e4c58f-eb94-4050-980b-e511b45627c7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.0654025} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6459a100-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/49283045-c771-4c6d-bcab-ba9f31739e25/signaling 200 10ms","method":"POST","requestID":"6459a100-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/49283045-c771-4c6d-bcab-ba9f31739e25/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"dcfd20ac76e7bec872a11a67fbca880c","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"645b75c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"645b9cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"dcfd20ac76e7bec872a11a67fbca880c"} gateway-1 | {"time_local":"07/Oct/2024:09:34:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e0460c3d-2851-46be-a9da-24daeca61f9d? 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":"dcfd20ac76e7bec872a11a67fbca880c"} device-1 | {"level":"info","message":"GET /devices/e0460c3d-2851-46be-a9da-24daeca61f9d? 200 13ms","method":"GET","requestID":"dcfd20ac76e7bec872a11a67fbca880c","responseTime":13,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1207,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Received request.","req_id":1208,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1207,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.254317,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"645b75c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293686,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"645b75c0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:36952","level":"info","msg":"Sent response.","req_id":1208,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.00929,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"645b9cd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293686,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"645b9cd0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4N30.LizM6WxZf_g66uqzHtYStTagapksrT8kRrCsj9Zc8v4","level":"info","message":"auth send jwt","requestID":"7b6ff00d13494561aad2155b7b719f35"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"7b6ff00d13494561aad2155b7b719f35","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7b6ff00d13494561aad2155b7b719f35"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.652618394Z"}]},"request_id":"ed367fae-2a3b-4948-a746-b5080f6785b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.0781798} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"645b75c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.701314369Z"}]},"request_id":"7edeb472-907b-450a-a2b5-1fbbc0e41d64","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.0799396} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"645b9cd0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1209,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1209,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.32735,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:47Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"645b75c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7b6ff00d13494561aad2155b7b719f35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293687,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4N30.LizM6WxZf_g66uqzHtYStTagapksrT8kRrCsj9Zc8v4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7b6ff00d13494561aad2155b7b719f35","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/e0460c3d-2851-46be-a9da-24daeca61f9d? 200 16ms","method":"GET","requestID":"645b75c0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"645b9cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/49283045-c771-4c6d-bcab-ba9f31739e25? 200 18ms","method":"GET","requestID":"645b9cd0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/49283045-c771-4c6d-bcab-ba9f31739e25?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:44.701314369Z"}]},"request_id":"28a4edf0-7172-4c47-9996-d5d433ae99b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.088042} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Building connection plan","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} 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":"689713ab-3f85-4c0f-be23-81d2b30e7900"},{"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":"d9e9818a-5a8d-4ea0-a738-44f6165441e0"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"aab87b71-48e8-4324-9f40-85388bf388ae"}]},"level":"info","message":"Built pairwise service configurations","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7b6ff00d13494561aad2155b7b719f35","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"url":"http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25"},{"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/e0460c3d-2851-46be-a9da-24daeca61f9d"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"645ed120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7b6ff00d13494561aad2155b7b719f35"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1210,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:47Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:47 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/49283045-c771-4c6d-bcab-ba9f31739e25? 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":"7b6ff00d13494561aad2155b7b719f35"} device-1 | {"level":"info","message":"GET /devices/49283045-c771-4c6d-bcab-ba9f31739e25? 200 15ms","method":"GET","requestID":"7b6ff00d13494561aad2155b7b719f35","responseTime":15,"status":200,"url":"/devices/49283045-c771-4c6d-bcab-ba9f31739e25?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1210,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.011109,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"645ed120-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293686,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4Nn0.SK0GjjOTqjXT3KOi841yTr_uSrPfnSpoq4F0bINijA0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"645ed120-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"115f6ed0-0aab-4010-8dec-46f19f11264b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.1026464} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64a90c28-7ce6-403a-953b-c2bf57264cbc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.1029243} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"645ed120-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"645ed120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"645ed120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e'","requestID":"645ed120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e'","requestID":"645ed120-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"645ed120-848f-11ef-9233-95baf63f17e0"} 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":"645ed120-848f-11ef-9233-95baf63f17e0","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":"645ed120-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"8a1fcaeb3929bb9d90e42bd7e22c81cb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"64675ca0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1211,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"31565116-f3bd-45be-8df0-c1058f98c797","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.1508672} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1211,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.566309,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"64675ca0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"64675ca0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"64675ca0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e0460c3d-2851-46be-a9da-24daeca61f9d/signaling 200 8ms","method":"POST","requestID":"64675ca0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"64690a50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1212,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"071605c9-bcae-44ff-91a6-46d9027e020e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293687.1620364} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1212,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.122694,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:47Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"64690a50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"64690a50-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"e0460c3d-2851-46be-a9da-24daeca61f9d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"e0460c3d-2851-46be-a9da-24daeca61f9d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"64690a50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/49283045-c771-4c6d-bcab-ba9f31739e25/signaling 200 10ms","method":"POST","requestID":"64690a50-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/49283045-c771-4c6d-bcab-ba9f31739e25/signaling"} device-1 | {"content":{"sdp":"v=0\r\no=- 7961635963943969037 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:1CNJ\r\na=ice-pwd:7Z9fFapje1MPjlU4QLnPe9n0\r\na=ice-options:trickle\r\na=fingerprint:sha-256 D0:FE:E2:7F:C1:7A:13:83:BD:D0:9F:0A:AA:28:00:FC:20:74:86:9D:79:47:2A:03:5D:B7:D6:55:2D:DE:E5:79\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"e0460c3d-2851-46be-a9da-24daeca61f9d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"device":"e0460c3d-2851-46be-a9da-24daeca61f9d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"49283045-c771-4c6d-bcab-ba9f31739e25","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":"105ce66a-0d88-49a1-b18b-d20090aa655e","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"49283045-c771-4c6d-bcab-ba9f31739e25","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":"49283045-c771-4c6d-bcab-ba9f31739e25","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":"49283045-c771-4c6d-bcab-ba9f31739e25","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":"49283045-c771-4c6d-bcab-ba9f31739e25","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/105ce66a-0d88-49a1-b18b-d20090aa655e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"105ce66a-0d88-49a1-b18b-d20090aa655e","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9f05872bc82b0f9c44214040aea886ca","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9f05872bc82b0f9c44214040aea886ca","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/49283045-c771-4c6d-bcab-ba9f31739e25"},{"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/e0460c3d-2851-46be-a9da-24daeca61f9d"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e"}}},"level":"info","message":"received a callback","requestID":"9f05872bc82b0f9c44214040aea886ca"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"9f05872bc82b0f9c44214040aea886ca","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"9f05872bc82b0f9c44214040aea886ca"} device-1 | {"content":{"candidate":"candidate:2138862632 1 udp 2113937151 5dc8be27-ac79-4dc5-b91e-eb16eee0aebb.local 50380 typ host generation 0 ufrag 1CNJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e0460c3d-2851-46be-a9da-24daeca61f9d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:4216397399 1 udp 1677729535 141.24.211.56 50380 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag 1CNJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e0460c3d-2851-46be-a9da-24daeca61f9d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2824643036 1 udp 33562623 141.24.210.113 61709 typ relay raddr 141.24.211.56 rport 50380 generation 0 ufrag 1CNJ network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"e0460c3d-2851-46be-a9da-24daeca61f9d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"e0460c3d-2851-46be-a9da-24daeca61f9d","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/e0460c3d-2851-46be-a9da-24daeca61f9d'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d'"} device-1 | {"data":{"peerconnection":"105ce66a-0d88-49a1-b18b-d20090aa655e","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"49283045-c771-4c6d-bcab-ba9f31739e25","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":"e0460c3d-2851-46be-a9da-24daeca61f9d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"49283045-c771-4c6d-bcab-ba9f31739e25","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":"105ce66a-0d88-49a1-b18b-d20090aa655e","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/105ce66a-0d88-49a1-b18b-d20090aa655e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"105ce66a-0d88-49a1-b18b-d20090aa655e","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"38ba14b75f1f8277ad7a6188f75a5742","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"38ba14b75f1f8277ad7a6188f75a5742","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/49283045-c771-4c6d-bcab-ba9f31739e25"},{"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/e0460c3d-2851-46be-a9da-24daeca61f9d"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e"}}},"level":"info","message":"received a callback","requestID":"38ba14b75f1f8277ad7a6188f75a5742"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"65a95280-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1213,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F105ce66a-0d88-49a1-b18b-d20090aa655e","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"45b11d72-2a28-4461-8cf5-452cf4e12d7b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.2628267} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1213,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.879553,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"65a95280-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e","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":"65a95280-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"65a95280-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e 200 11ms","method":"GET","requestID":"65a95280-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"38ba14b75f1f8277ad7a6188f75a5742","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.041","http_referrer":"","http_user_agent":"node-fetch","requestID":"38ba14b75f1f8277ad7a6188f75a5742"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"65ade660-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1214,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"87e13a84-d732-4497-bf4a-fb8942b7db36","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.2927155} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1214,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.834927,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"65ade660-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","object_type":"device","rebac_allow":false,"scope_allow":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":"65ade660-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"65ade660-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/49283045-c771-4c6d-bcab-ba9f31739e25/signaling 200 13ms","method":"POST","requestID":"65ade660-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/49283045-c771-4c6d-bcab-ba9f31739e25/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"65b05760-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1215,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bc34aa03-4022-4e3b-9344-1e9dfd382164","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.3086605} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1215,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.940908,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"65b05760-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","object_type":"device","rebac_allow":false,"scope_allow":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":"65b05760-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"65b05760-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e0460c3d-2851-46be-a9da-24daeca61f9d/signaling 200 14ms","method":"POST","requestID":"65b05760-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4OX0.-frwnS8d4St5yGDMJDqx21bXf3MafIQa0FJHSOH48es","level":"info","message":"auth send jwt","requestID":"21e2021d0c9e00b290c7c2903bf477eb"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"21e2021d0c9e00b290c7c2903bf477eb","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/12e8e870-db05-4bbc-9220-7656080d35c1","requestID":"21e2021d0c9e00b290c7c2903bf477eb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1216,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1216,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.138602,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"21e2021d0c9e00b290c7c2903bf477eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293689,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4OX0.-frwnS8d4St5yGDMJDqx21bXf3MafIQa0FJHSOH48es"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"21e2021d0c9e00b290c7c2903bf477eb","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/12e8e870-db05-4bbc-9220-7656080d35c1","requestID":"21e2021d0c9e00b290c7c2903bf477eb"} gateway-1 | {"time_local":"07/Oct/2024:09:34:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/12e8e870-db05-4bbc-9220-7656080d35c1 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.023","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"21e2021d0c9e00b290c7c2903bf477eb"} experiment-1 | {"level":"info","message":"GET /experiments/12e8e870-db05-4bbc-9220-7656080d35c1 200 16ms","method":"GET","requestID":"21e2021d0c9e00b290c7c2903bf477eb","responseTime":16,"status":200,"url":"/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4OX0.-frwnS8d4St5yGDMJDqx21bXf3MafIQa0FJHSOH48es","level":"info","message":"auth send jwt","requestID":"ce133dfc75142e5bae04e189f2cf00e1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ce133dfc75142e5bae04e189f2cf00e1","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/12e8e870-db05-4bbc-9220-7656080d35c1","requestID":"ce133dfc75142e5bae04e189f2cf00e1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1217,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1217,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.382312,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ce133dfc75142e5bae04e189f2cf00e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293689,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4OX0.-frwnS8d4St5yGDMJDqx21bXf3MafIQa0FJHSOH48es"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ce133dfc75142e5bae04e189f2cf00e1","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Attempting to finish experiment","requestID":"ce133dfc75142e5bae04e189f2cf00e1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"65be3a10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1218,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1218,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.330521,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"65be3a10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293689,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4OX0.-frwnS8d4St5yGDMJDqx21bXf3MafIQa0FJHSOH48es"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"65be3a10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e","device":"e0460c3d-2851-46be-a9da-24daeca61f9d","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"49283045-c771-4c6d-bcab-ba9f31739e25","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":"49283045-c771-4c6d-bcab-ba9f31739e25","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":"49283045-c771-4c6d-bcab-ba9f31739e25","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/105ce66a-0d88-49a1-b18b-d20090aa655e' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"105ce66a-0d88-49a1-b18b-d20090aa655e","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F105ce66a-0d88-49a1-b18b-d20090aa655e': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F105ce66a-0d88-49a1-b18b-d20090aa655e","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"11d6908a-32a9-4da6-857b-3d9b2bca616c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.4186456} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7f948988a1b7052da0efe9d910c4b5c9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1906a2c0-9ed8-44c6-bd8a-0eed62a2d43f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.4192107} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"7f948988a1b7052da0efe9d910c4b5c9","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a373681cdd96e35680290c12237e2338","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/49283045-c771-4c6d-bcab-ba9f31739e25"},{"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/e0460c3d-2851-46be-a9da-24daeca61f9d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e"}}},"level":"info","message":"received a callback","requestID":"7f948988a1b7052da0efe9d910c4b5c9"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"65be3a10-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"a373681cdd96e35680290c12237e2338","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"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/49283045-c771-4c6d-bcab-ba9f31739e25"},{"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/e0460c3d-2851-46be-a9da-24daeca61f9d"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e"}}},"level":"info","message":"received a callback","requestID":"a373681cdd96e35680290c12237e2338"} device-1 | {"data":{"peerconnection":"105ce66a-0d88-49a1-b18b-d20090aa655e","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"65be3a10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e 204 49ms","method":"DELETE","requestID":"65be3a10-848f-11ef-9233-95baf63f17e0","responseTime":49,"status":204,"url":"/peerconnections/105ce66a-0d88-49a1-b18b-d20090aa655e"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"},"level":"info","message":"Successfully finished experiment","requestID":"ce133dfc75142e5bae04e189f2cf00e1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"65c93690-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1219,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F49283045-c771-4c6d-bcab-ba9f31739e25","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"70e63738-46e4-4565-9bbe-8a57958b6284","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.472092} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1219,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.089155,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"65c93690-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/49283045-c771-4c6d-bcab-ba9f31739e25","object_type":"device","rebac_allow":false,"scope_allow":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":"65c93690-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"65c93690-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/49283045-c771-4c6d-bcab-ba9f31739e25/signaling 200 14ms","method":"POST","requestID":"65c93690-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/49283045-c771-4c6d-bcab-ba9f31739e25/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F12e8e870-db05-4bbc-9220-7656080d35c1': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F12e8e870-db05-4bbc-9220-7656080d35c1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"9fbcb97d-2319-4faf-8a32-c47f97a63fc1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.4795582} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f0b405c1-4e11-43d3-b16d-096f8f91fd08","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.4802887} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"ce133dfc75142e5bae04e189f2cf00e1","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"65cbf5b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1220,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe0460c3d-2851-46be-a9da-24daeca61f9d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bdf1f657-70d6-45b9-9ec1-4327adc5351c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.4906652} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1220,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.677183,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"65cbf5b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d","object_type":"device","rebac_allow":false,"scope_allow":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":"65cbf5b0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"65cbf5b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e0460c3d-2851-46be-a9da-24daeca61f9d/signaling 200 14ms","method":"POST","requestID":"65cbf5b0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/e0460c3d-2851-46be-a9da-24daeca61f9d/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/12e8e870-db05-4bbc-9220-7656080d35c1","requestID":"ce133dfc75142e5bae04e189f2cf00e1"} gateway-1 | {"time_local":"07/Oct/2024:09:34:49 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/12e8e870-db05-4bbc-9220-7656080d35c1 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":"ce133dfc75142e5bae04e189f2cf00e1"} gateway-1 | {"time_local":"07/Oct/2024:09:34:49 +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.313","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"30817f0e5bbe67d607208f69b0b90964"} experiment-1 | {"level":"info","message":"DELETE /experiments/12e8e870-db05-4bbc-9220-7656080d35c1 204 171ms","method":"DELETE","requestID":"ce133dfc75142e5bae04e189f2cf00e1","responseTime":171,"status":204,"url":"/experiments/12e8e870-db05-4bbc-9220-7656080d35c1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 127ms","method":"POST","requestID":"7f948988a1b7052da0efe9d910c4b5c9","responseTime":127,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"7f948988a1b7052da0efe9d910c4b5c9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"a373681cdd96e35680290c12237e2338","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"a373681cdd96e35680290c12237e2338"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4OX0.-frwnS8d4St5yGDMJDqx21bXf3MafIQa0FJHSOH48es","level":"info","message":"auth send jwt","requestID":"9935901a34a0a21e10f2ebdbf69c547a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"9935901a34a0a21e10f2ebdbf69c547a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"9935901a34a0a21e10f2ebdbf69c547a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1221,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:49Z"} gateway-1 | {"time_local":"07/Oct/2024:09:34:49 +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.808","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"ad5ff44c5af588741cd767ab3e57702f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1221,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":2.98164,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9935901a34a0a21e10f2ebdbf69c547a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293689,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4OX0.-frwnS8d4St5yGDMJDqx21bXf3MafIQa0FJHSOH48es"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"9935901a34a0a21e10f2ebdbf69c547a","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/49283045-c771-4c6d-bcab-ba9f31739e25' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/e0460c3d-2851-46be-a9da-24daeca61f9d' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8b06f7f4-489e-49a7-ad60-1d7f1a55b8c9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.578601} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"9935901a34a0a21e10f2ebdbf69c547a","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"34b3fca1-eb22-49d3-9d1d-c01ffb593c51","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.589475} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"9935901a34a0a21e10f2ebdbf69c547a","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"3c38cc91-0856-4a96-9364-27bdbbccafe7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.599114} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"0c57b3f5-e8c3-418d-a1d4-152dd464a59d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.599255} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"9935901a34a0a21e10f2ebdbf69c547a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.599073961Z"}]},"request_id":"7be9f0aa-fce4-4fac-b505-fa775fc2b62d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.6082652} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"9935901a34a0a21e10f2ebdbf69c547a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"9935901a34a0a21e10f2ebdbf69c547a"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.063","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"9935901a34a0a21e10f2ebdbf69c547a"} device-1 | {"level":"info","message":"POST /devices? 201 56ms","method":"POST","requestID":"9935901a34a0a21e10f2ebdbf69c547a","responseTime":56,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4OX0.-frwnS8d4St5yGDMJDqx21bXf3MafIQa0FJHSOH48es","level":"info","message":"auth send jwt","requestID":"3444ca238a0e7fa1dc8b0b9ceee68a80"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"3444ca238a0e7fa1dc8b0b9ceee68a80","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"3444ca238a0e7fa1dc8b0b9ceee68a80"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1222,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1222,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.759785,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:49Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3444ca238a0e7fa1dc8b0b9ceee68a80","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293689,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY4OX0.-frwnS8d4St5yGDMJDqx21bXf3MafIQa0FJHSOH48es"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3444ca238a0e7fa1dc8b0b9ceee68a80","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"843aa71f-f732-4e6b-af37-3dea43da48e9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.636119} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3444ca238a0e7fa1dc8b0b9ceee68a80","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9539acaf-acd2-4993-aba7-9fcc3c506561","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.6403627} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"3444ca238a0e7fa1dc8b0b9ceee68a80","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"1ad5496e-5ea1-4aae-b337-e924227c937e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.651341} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"350786b0-f18b-4797-8ae6-1968f13989e0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.6515841} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"3444ca238a0e7fa1dc8b0b9ceee68a80","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.651299688Z"}]},"request_id":"0cc79b36-4e5d-4d5d-9c4c-fad09eae3d34","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293689.6548944} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3444ca238a0e7fa1dc8b0b9ceee68a80","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"3444ca238a0e7fa1dc8b0b9ceee68a80"} device-1 | {"level":"info","message":"POST /devices? 201 40ms","method":"POST","requestID":"3444ca238a0e7fa1dc8b0b9ceee68a80","responseTime":40,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3444ca238a0e7fa1dc8b0b9ceee68a80"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MH0.uNUVdTwTMSkStXAxZ0NXuYdDGXshZD1EUBEdXf30BWA","level":"info","message":"auth send jwt","requestID":"4e76e41f872a1e54caeb6b915d6f8b43"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4e76e41f872a1e54caeb6b915d6f8b43","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4e76e41f872a1e54caeb6b915d6f8b43"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1223,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1223,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.128114,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4e76e41f872a1e54caeb6b915d6f8b43","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293690,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MH0.uNUVdTwTMSkStXAxZ0NXuYdDGXshZD1EUBEdXf30BWA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4e76e41f872a1e54caeb6b915d6f8b43","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.651299688Z"}]},"request_id":"09be6615-9dc3-447a-8cae-0c012da97bec","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293690.144847} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4e76e41f872a1e54caeb6b915d6f8b43","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b6613928-3cd2-4ed0-b7b9-11810714f63a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293690.1500745} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4e76e41f872a1e54caeb6b915d6f8b43","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.651299688Z"}]},"request_id":"62c89ef1-7dd3-470e-9f96-40fb7af3b104","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293690.162238} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4e76e41f872a1e54caeb6b915d6f8b43","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4e76e41f872a1e54caeb6b915d6f8b43"} device-1 | {"level":"info","message":"PATCH /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b 200 31ms","method":"PATCH","requestID":"4e76e41f872a1e54caeb6b915d6f8b43","responseTime":31,"status":200,"url":"/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b"} gateway-1 | {"time_local":"07/Oct/2024:09:34:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.038","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"4e76e41f872a1e54caeb6b915d6f8b43"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MH0.uNUVdTwTMSkStXAxZ0NXuYdDGXshZD1EUBEdXf30BWA","level":"info","message":"auth send jwt","requestID":"6297083445a79ad5949b885a8ff5e9e6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6297083445a79ad5949b885a8ff5e9e6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6297083445a79ad5949b885a8ff5e9e6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1224,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:50Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1224,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.715038,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:50Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6297083445a79ad5949b885a8ff5e9e6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293690,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MH0.uNUVdTwTMSkStXAxZ0NXuYdDGXshZD1EUBEdXf30BWA"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6297083445a79ad5949b885a8ff5e9e6","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6297083445a79ad5949b885a8ff5e9e6"} device-1 | {"level":"info","message":"POST /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b/websocket 200 18ms","method":"POST","requestID":"6297083445a79ad5949b885a8ff5e9e6","responseTime":18,"status":200,"url":"/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:50 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b/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.9","requestID":"6297083445a79ad5949b885a8ff5e9e6"} device-1 | {"level":"info","message":"device 'http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b1061a061cefed2f04ee1b50c1a17c2b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"b1061a061cefed2f04ee1b50c1a17c2b","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/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":"b1061a061cefed2f04ee1b50c1a17c2b"} device-1 | {"level":"info","message":"OPTIONS /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/websocket 200 1ms","method":"OPTIONS","requestID":"b1061a061cefed2f04ee1b50c1a17c2b","responseTime":1,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ","level":"info","message":"auth send jwt","requestID":"094dda416106eaeac0b002bf2098a7c1"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"094dda416106eaeac0b002bf2098a7c1","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"094dda416106eaeac0b002bf2098a7c1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1225,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1225,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.231046,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"094dda416106eaeac0b002bf2098a7c1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293691,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"094dda416106eaeac0b002bf2098a7c1","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"094dda416106eaeac0b002bf2098a7c1"} device-1 | {"level":"info","message":"POST /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/websocket 200 21ms","method":"POST","requestID":"094dda416106eaeac0b002bf2098a7c1","responseTime":21,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/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":"094dda416106eaeac0b002bf2098a7c1"} device-1 | {"level":"info","message":"device 'http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"01ade2542abfa02279ae3ff325aed1c6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"01ade2542abfa02279ae3ff325aed1c6","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480? 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":"01ade2542abfa02279ae3ff325aed1c6"} device-1 | {"level":"info","message":"OPTIONS /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480? 200 1ms","method":"OPTIONS","requestID":"01ade2542abfa02279ae3ff325aed1c6","responseTime":1,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ","level":"info","message":"auth send jwt","requestID":"ad82fb99d1aa67538fd745fbff55fb5e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ad82fb99d1aa67538fd745fbff55fb5e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ad82fb99d1aa67538fd745fbff55fb5e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1226,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1226,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.304918,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ad82fb99d1aa67538fd745fbff55fb5e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293691,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ad82fb99d1aa67538fd745fbff55fb5e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.599073961Z"}]},"request_id":"25895517-5ebf-4ef6-a6de-8208f926e1d3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.7618244} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ad82fb99d1aa67538fd745fbff55fb5e","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"99c6f21d-fc3a-44ea-9edd-b78f62b0ccec","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.768561} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"ad82fb99d1aa67538fd745fbff55fb5e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.599073961Z"}]},"request_id":"2d95116e-9171-44ce-ad37-7d68ff91f69b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.7818727} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ad82fb99d1aa67538fd745fbff55fb5e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ad82fb99d1aa67538fd745fbff55fb5e"} device-1 | {"level":"info","message":"PATCH /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480? 200 36ms","method":"PATCH","requestID":"ad82fb99d1aa67538fd745fbff55fb5e","responseTime":36,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480? 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":"ad82fb99d1aa67538fd745fbff55fb5e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ","level":"info","message":"auth send jwt","requestID":"eac7a63bf364edbbe88484014b005d24"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"eac7a63bf364edbbe88484014b005d24","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"eac7a63bf364edbbe88484014b005d24"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1227,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1227,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.306526,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"eac7a63bf364edbbe88484014b005d24","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293691,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eac7a63bf364edbbe88484014b005d24","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.599073961Z"}]},"request_id":"b259db27-08c0-4038-87f6-e4ebbb8bbca3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.8099709} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"eac7a63bf364edbbe88484014b005d24","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"eac7a63bf364edbbe88484014b005d24"} device-1 | {"level":"info","message":"GET /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480? 200 16ms","method":"GET","requestID":"eac7a63bf364edbbe88484014b005d24","responseTime":16,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480? 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":"eac7a63bf364edbbe88484014b005d24"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ","level":"info","message":"auth send jwt","requestID":"e050232a0fae4e5ee02b54f29f6a3dd8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e050232a0fae4e5ee02b54f29f6a3dd8","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e050232a0fae4e5ee02b54f29f6a3dd8"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1228,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1228,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.112311,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e050232a0fae4e5ee02b54f29f6a3dd8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293691,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e050232a0fae4e5ee02b54f29f6a3dd8","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.651299688Z"}]},"request_id":"21743614-794d-4292-b3b9-dc9c5138f0a5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.832479} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e050232a0fae4e5ee02b54f29f6a3dd8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e050232a0fae4e5ee02b54f29f6a3dd8"} device-1 | {"level":"info","message":"GET /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b? 200 15ms","method":"GET","requestID":"e050232a0fae4e5ee02b54f29f6a3dd8","responseTime":15,"status":200,"url":"/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b? 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":"e050232a0fae4e5ee02b54f29f6a3dd8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ","level":"info","message":"auth send jwt","requestID":"a519a29d86509d0d72b1a8070ec0a512"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a519a29d86509d0d72b1a8070ec0a512","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"a519a29d86509d0d72b1a8070ec0a512"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1229,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1229,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.473247,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a519a29d86509d0d72b1a8070ec0a512","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293691,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a519a29d86509d0d72b1a8070ec0a512","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Attempting to run experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Attempting to book experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Successfully booked experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"673b6430-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"673b8b40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1230,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1230,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.076757,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"673b6430-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293691,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"673b6430-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56038","level":"info","msg":"Received request.","req_id":1231,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"client_addr":"127.0.0.1:56038","level":"info","msg":"Sent response.","req_id":1231,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.913514,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"673b8b40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293691,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"673b8b40-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.599073961Z"}]},"request_id":"c05d9915-59fd-4b08-b3af-4cad8857a296","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.900436} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"673b6430-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.651299688Z"}]},"request_id":"e3961417-0c7b-455e-91f3-e8272ed33b45","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.9033742} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"673b6430-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"673b8b40-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480? 200 13ms","method":"GET","requestID":"673b6430-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"673b8b40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b? 200 14ms","method":"GET","requestID":"673b8b40-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Setting up experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Successfully locked booking for experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Attempting to update booking for experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Successfully updated booking for experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Successfully set up experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"67452830-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"67454f40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"67459d60-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1232,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1232,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.95252,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"67452830-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293691,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Successfully running experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"67452830-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56038","level":"info","msg":"Received request.","req_id":1233,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"client_addr":"127.0.0.1:56038","level":"info","msg":"Sent response.","req_id":1233,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.075151,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"67454f40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293691,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"67454f40-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1234,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"46a347f9-ed15-4fa9-99e2-3fcf1e01b336","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.9646544} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.651299688Z"}]},"request_id":"d3c8d134-00a3-437c-aa7f-0680d070aeab","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.9674623} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1234,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.827983,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"67459d60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","object_type":"device","rebac_allow":false,"scope_allow":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":"67459d60-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"67454f40-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.599073961Z"}]},"request_id":"6c5857e6-d7eb-48bc-bb36-b15a1065abab","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.968381} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"67452830-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"67459d60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/signaling 200 17ms","method":"POST","requestID":"67459d60-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"67454f40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b? 200 20ms","method":"GET","requestID":"67454f40-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"67452830-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480? 200 22ms","method":"GET","requestID":"67452830-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6748d1b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"67491fd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1235,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"368e80d8-cb23-4580-809c-cbd969868a36","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.9848285} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F748818d7-86a6-4732-8f91-6905ef37f354#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F748818d7-86a6-4732-8f91-6905ef37f354","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"739bd5e8-a30b-4dfd-8927-9970692ffd7b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.9853287} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"21c7fc0d-2900-4cba-a6e6-d13c43e01ffe","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.9855363} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"a519a29d86509d0d72b1a8070ec0a512","responseTime":24,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:56038","level":"info","msg":"Received request.","req_id":1236,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1235,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.361006,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6748d1b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","object_type":"device","rebac_allow":false,"scope_allow":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":"6748d1b0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ee7d82b6-7747-44ad-b2ce-601d468e1d72","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293691.9894567} authorization-1 | {"client_addr":"127.0.0.1:56038","level":"info","msg":"Sent response.","req_id":1236,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.621478,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:51Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"67491fd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","object_type":"device","rebac_allow":false,"scope_allow":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":"67491fd0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"a519a29d86509d0d72b1a8070ec0a512"} gateway-1 | {"time_local":"07/Oct/2024:09:34:51 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.155","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a519a29d86509d0d72b1a8070ec0a512"} experiment-1 | {"level":"info","message":"POST /experiments? 201 150ms","method":"POST","requestID":"a519a29d86509d0d72b1a8070ec0a512","responseTime":150,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6748d1b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b/signaling 200 19ms","method":"POST","requestID":"6748d1b0-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"67491fd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/signaling 200 17ms","method":"POST","requestID":"67491fd0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ","level":"info","message":"auth send jwt","requestID":"b9afbbbc2cfb5a2791c4a8c6fed5a1d0"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b9afbbbc2cfb5a2791c4a8c6fed5a1d0","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"674c0600-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b9afbbbc2cfb5a2791c4a8c6fed5a1d0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1237,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"client_addr":"127.0.0.1:56038","level":"info","msg":"Received request.","req_id":1238,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"client_addr":"127.0.0.1:56038","level":"info","msg":"Sent response.","req_id":1238,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.743171,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b9afbbbc2cfb5a2791c4a8c6fed5a1d0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293691,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b9afbbbc2cfb5a2791c4a8c6fed5a1d0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1237,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.562425,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"07fe7fb2-4139-49c5-899a-d5d5d34da7bd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293692.0046878} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"674c0600-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"674c0600-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.599073961Z"}]},"request_id":"a85fe368-ce42-45c8-b657-0d27d8405a58","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293692.00807} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"674c0600-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b9afbbbc2cfb5a2791c4a8c6fed5a1d0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b/signaling 200 8ms","method":"POST","requestID":"674c0600-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"674d8ca0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"674db3b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b9afbbbc2cfb5a2791c4a8c6fed5a1d0"} device-1 | {"level":"info","message":"GET /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480? 200 10ms","method":"GET","requestID":"b9afbbbc2cfb5a2791c4a8c6fed5a1d0","responseTime":10,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480? 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":"b9afbbbc2cfb5a2791c4a8c6fed5a1d0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1239,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1239,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.681965,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"674d8ca0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293691,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"674d8ca0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56038","level":"info","msg":"Received request.","req_id":1240,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"client_addr":"127.0.0.1:56038","level":"info","msg":"Sent response.","req_id":1240,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.59042,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"674db3b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293691,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"674db3b0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Mn0.M5Xm3ciUnPmDiNuedGnvmDMN9uaa9kJQGZLFDEFszUg","level":"info","message":"auth send jwt","requestID":"e244115f91bd4c34289acab455e16628"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e244115f91bd4c34289acab455e16628","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.599073961Z"}]},"request_id":"d20cba6f-f920-4af3-963c-e69efc570d66","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293692.016835} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e244115f91bd4c34289acab455e16628"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"674d8ca0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.651299688Z"}]},"request_id":"c65c43d3-165d-4a2d-ba01-ca4b1871494c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293692.0178542} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"674db3b0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1241,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1241,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.738513,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e244115f91bd4c34289acab455e16628","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293692,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Mn0.M5Xm3ciUnPmDiNuedGnvmDMN9uaa9kJQGZLFDEFszUg"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"674d8ca0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"e244115f91bd4c34289acab455e16628","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"GET /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480? 200 12ms","method":"GET","requestID":"674d8ca0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"674db3b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b? 200 11ms","method":"GET","requestID":"674db3b0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Building connection plan","requestID":"a519a29d86509d0d72b1a8070ec0a512"} 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":"5d851096-7d49-401e-a1cd-9ce380c69208"},{"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":"bb8a4ebf-e078-497c-a793-461512e0dbd3"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"9f7fbe62-5483-4555-9b3b-f8bdf48cdc7e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"a519a29d86509d0d72b1a8070ec0a512"} 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/dcc605d6-26de-451b-b8d8-e9bacd5ad480"},{"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/d4d2f247-b590-4e67-b968-64c0e7b9d12b"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"a519a29d86509d0d72b1a8070ec0a512"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"674fd690-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:49.651299688Z"}]},"request_id":"76a9b492-d1fe-4bab-824b-166c740c661d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293692.0255563} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e244115f91bd4c34289acab455e16628","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1242,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1242,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.71597,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:52Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e244115f91bd4c34289acab455e16628"} gateway-1 | {"time_local":"07/Oct/2024:09:34:52 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b? 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":"e244115f91bd4c34289acab455e16628"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"674fd690-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293691,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5MX0.Zxo7D7ddxjD4j6n8ZxN5CW1tZsPHaQRswtDrSITYdrQ"} device-1 | {"level":"info","message":"GET /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b? 200 12ms","method":"GET","requestID":"e244115f91bd4c34289acab455e16628","responseTime":12,"status":200,"url":"/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b?"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"674fd690-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"03dad81c-512e-46c4-bbbe-b93275600464","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293692.035285} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"04a7c4c4-1dbf-40dc-b356-581df7edf1f7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293692.0356724} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"674fd690-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"674fd690-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"674fd690-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea'","requestID":"674fd690-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea'","requestID":"674fd690-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"674fd690-848f-11ef-9233-95baf63f17e0"} 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":"674fd690-848f-11ef-9233-95baf63f17e0","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":"674fd690-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"a519a29d86509d0d72b1a8070ec0a512"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"675750a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1243,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"788e6a3d-5a0d-4276-9fcd-8760e7510c09","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293692.0783224} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1243,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.486312,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"675750a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","object_type":"device","rebac_allow":false,"scope_allow":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":"675750a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"675750a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/signaling 200 8ms","method":"POST","requestID":"675750a0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6758b030-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1244,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0eeba38a-4a01-4b0b-8e44-42a9651707c9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293692.0878124} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1244,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.52509,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:52Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6758b030-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6758b030-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"dcc605d6-26de-451b-b8d8-e9bacd5ad480","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"dcc605d6-26de-451b-b8d8-e9bacd5ad480","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6758b030-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b/signaling 200 10ms","method":"POST","requestID":"6758b030-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b/signaling"} device-1 | {"device":"d4d2f247-b590-4e67-b968-64c0e7b9d12b","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":"6522455c-ae56-4027-b8b3-8acd4dc000ea","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 5109495380122412381 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:t+Ko\r\na=ice-pwd:vKrjMsbaE+9YIP00cnawiIBD\r\na=ice-options:trickle\r\na=fingerprint:sha-256 0C:A8:D4:91:AD:9F:78:DE:57:BD:08:72:3C:AA:85:5D:56:A0:4F:E6:75:B9:A7:01:FF:65:DE:0B:7E:AC:FC:F9\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"dcc605d6-26de-451b-b8d8-e9bacd5ad480","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:2905217682 1 udp 2113937151 3409bdf7-5cd3-44f7-92fe-5c55ac715f00.local 42660 typ host generation 0 ufrag t+Ko network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"dcc605d6-26de-451b-b8d8-e9bacd5ad480","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"dcc605d6-26de-451b-b8d8-e9bacd5ad480","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/6522455c-ae56-4027-b8b3-8acd4dc000ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6522455c-ae56-4027-b8b3-8acd4dc000ea","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d4d2f247-b590-4e67-b968-64c0e7b9d12b","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":"d4d2f247-b590-4e67-b968-64c0e7b9d12b","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":"d4d2f247-b590-4e67-b968-64c0e7b9d12b","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"88dea398f0af156692025c0d5c3b67e0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"content":{"candidate":"candidate:688353517 1 udp 1677729535 141.24.211.56 42660 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag t+Ko network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"dcc605d6-26de-451b-b8d8-e9bacd5ad480","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"88dea398f0af156692025c0d5c3b67e0","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480"},{"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/d4d2f247-b590-4e67-b968-64c0e7b9d12b"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea"}}},"level":"info","message":"received a callback","requestID":"88dea398f0af156692025c0d5c3b67e0"} device-1 | {"device":"dcc605d6-26de-451b-b8d8-e9bacd5ad480","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/dcc605d6-26de-451b-b8d8-e9bacd5ad480'"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"88dea398f0af156692025c0d5c3b67e0","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.011","http_referrer":"","http_user_agent":"node-fetch","requestID":"88dea398f0af156692025c0d5c3b67e0"} device-1 | {"data":{"peerconnection":"6522455c-ae56-4027-b8b3-8acd4dc000ea","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"d4d2f247-b590-4e67-b968-64c0e7b9d12b","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":"dcc605d6-26de-451b-b8d8-e9bacd5ad480","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"d4d2f247-b590-4e67-b968-64c0e7b9d12b","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":"6522455c-ae56-4027-b8b3-8acd4dc000ea","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"dcc605d6-26de-451b-b8d8-e9bacd5ad480","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/6522455c-ae56-4027-b8b3-8acd4dc000ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6522455c-ae56-4027-b8b3-8acd4dc000ea","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f9318e9bb4f626599e8ea50cc3e1c72e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"f9318e9bb4f626599e8ea50cc3e1c72e","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/dcc605d6-26de-451b-b8d8-e9bacd5ad480"},{"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/d4d2f247-b590-4e67-b968-64c0e7b9d12b"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea"}}},"level":"info","message":"received a callback","requestID":"f9318e9bb4f626599e8ea50cc3e1c72e"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"689ca1e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1245,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6522455c-ae56-4027-b8b3-8acd4dc000ea","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a2d5d9ba-6e18-4587-805e-56ba20216997","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.212124} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1245,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.782603,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"689ca1e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea","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":"689ca1e0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"689ca1e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea 200 11ms","method":"GET","requestID":"689ca1e0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 36ms","method":"POST","requestID":"f9318e9bb4f626599e8ea50cc3e1c72e","responseTime":36,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.040","http_referrer":"","http_user_agent":"node-fetch","requestID":"f9318e9bb4f626599e8ea50cc3e1c72e"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"68a15cd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1246,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fee3495a-ec56-4106-9092-0f755bfe8be0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.245515} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1246,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.223626,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"68a15cd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","object_type":"device","rebac_allow":false,"scope_allow":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":"68a15cd0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"68a15cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/signaling 200 15ms","method":"POST","requestID":"68a15cd0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"68a41bf0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1247,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f11ef9c4-32fa-4c02-b0ed-4ca8599c174a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.2616317} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1247,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.591412,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"68a41bf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","object_type":"device","rebac_allow":false,"scope_allow":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":"68a41bf0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"68a41bf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b/signaling 200 13ms","method":"POST","requestID":"68a41bf0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5NH0.fLxOosY0J2nm-xwCc90y0nnnx0nVaMglHRP1msAREE4","level":"info","message":"auth send jwt","requestID":"ec65d283ce85947acb009c9b41c653ca"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ec65d283ce85947acb009c9b41c653ca","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/748818d7-86a6-4732-8f91-6905ef37f354","requestID":"ec65d283ce85947acb009c9b41c653ca"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1248,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1248,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.145469,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ec65d283ce85947acb009c9b41c653ca","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293694,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5NH0.fLxOosY0J2nm-xwCc90y0nnnx0nVaMglHRP1msAREE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ec65d283ce85947acb009c9b41c653ca","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/748818d7-86a6-4732-8f91-6905ef37f354","requestID":"ec65d283ce85947acb009c9b41c653ca"} experiment-1 | {"level":"info","message":"GET /experiments/748818d7-86a6-4732-8f91-6905ef37f354 200 13ms","method":"GET","requestID":"ec65d283ce85947acb009c9b41c653ca","responseTime":13,"status":200,"url":"/experiments/748818d7-86a6-4732-8f91-6905ef37f354"} gateway-1 | {"time_local":"07/Oct/2024:09:34:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/748818d7-86a6-4732-8f91-6905ef37f354 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":"ec65d283ce85947acb009c9b41c653ca"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5NH0.fLxOosY0J2nm-xwCc90y0nnnx0nVaMglHRP1msAREE4","level":"info","message":"auth send jwt","requestID":"d4161fe5782695f4deb93e5bad7b0ba8"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d4161fe5782695f4deb93e5bad7b0ba8","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/748818d7-86a6-4732-8f91-6905ef37f354","requestID":"d4161fe5782695f4deb93e5bad7b0ba8"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1249,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1249,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.224099,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d4161fe5782695f4deb93e5bad7b0ba8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293694,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5NH0.fLxOosY0J2nm-xwCc90y0nnnx0nVaMglHRP1msAREE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d4161fe5782695f4deb93e5bad7b0ba8","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Attempting to finish experiment","requestID":"d4161fe5782695f4deb93e5bad7b0ba8"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"68b0ed30-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1250,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1250,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.242493,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"68b0ed30-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293694,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5NH0.fLxOosY0J2nm-xwCc90y0nnnx0nVaMglHRP1msAREE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"68b0ed30-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea","device":"dcc605d6-26de-451b-b8d8-e9bacd5ad480","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"d4d2f247-b590-4e67-b968-64c0e7b9d12b","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":"d4d2f247-b590-4e67-b968-64c0e7b9d12b","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":"d4d2f247-b590-4e67-b968-64c0e7b9d12b","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/6522455c-ae56-4027-b8b3-8acd4dc000ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6522455c-ae56-4027-b8b3-8acd4dc000ea","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d82f8e52237793a5e7603fde3f65e96b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6522455c-ae56-4027-b8b3-8acd4dc000ea': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6522455c-ae56-4027-b8b3-8acd4dc000ea","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"dba1790e-5ed6-4955-a3ab-7bbfc0b42df4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.36548} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d82f8e52237793a5e7603fde3f65e96b","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5480c600-1be7-4c41-aa82-c803181139b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.3664153} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a2613a2d9c6698e22eb34a18b034ee7d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"a2613a2d9c6698e22eb34a18b034ee7d","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"68b0ed30-848f-11ef-9233-95baf63f17e0","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":"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/dcc605d6-26de-451b-b8d8-e9bacd5ad480"},{"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/d4d2f247-b590-4e67-b968-64c0e7b9d12b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea"}}},"level":"info","message":"received a callback","requestID":"d82f8e52237793a5e7603fde3f65e96b"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480"},{"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/d4d2f247-b590-4e67-b968-64c0e7b9d12b"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea"}}},"level":"info","message":"received a callback","requestID":"a2613a2d9c6698e22eb34a18b034ee7d"} device-1 | {"data":{"peerconnection":"6522455c-ae56-4027-b8b3-8acd4dc000ea","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"68b0ed30-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea 204 50ms","method":"DELETE","requestID":"68b0ed30-848f-11ef-9233-95baf63f17e0","responseTime":50,"status":204,"url":"/peerconnections/6522455c-ae56-4027-b8b3-8acd4dc000ea"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/748818d7-86a6-4732-8f91-6905ef37f354"},"level":"info","message":"Successfully finished experiment","requestID":"d4161fe5782695f4deb93e5bad7b0ba8"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"68bbe9b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1251,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdcc605d6-26de-451b-b8d8-e9bacd5ad480","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2453eab-04e9-4f2c-8182-1898bf9469b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.4184883} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1251,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.756635,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"68bbe9b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480","object_type":"device","rebac_allow":false,"scope_allow":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":"68bbe9b0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"68bbe9b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/signaling 200 14ms","method":"POST","requestID":"68bbe9b0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/dcc605d6-26de-451b-b8d8-e9bacd5ad480/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F748818d7-86a6-4732-8f91-6905ef37f354': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F748818d7-86a6-4732-8f91-6905ef37f354","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"61eb7370-2415-4b2a-a94f-10eb47a2f9e6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.4272935} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e53a5aab-7e36-4268-be01-c3a065321276","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.42753} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"68be81c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"d4161fe5782695f4deb93e5bad7b0ba8","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1252,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fd4d2f247-b590-4e67-b968-64c0e7b9d12b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"04e7e80a-b509-45b5-9de1-f5c9287b4a6b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.4342906} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1252,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.764584,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"68be81c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b","object_type":"device","rebac_allow":false,"scope_allow":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":"68be81c0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"68be81c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b/signaling 200 12ms","method":"POST","requestID":"68be81c0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/d4d2f247-b590-4e67-b968-64c0e7b9d12b/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/748818d7-86a6-4732-8f91-6905ef37f354","requestID":"d4161fe5782695f4deb93e5bad7b0ba8"} gateway-1 | {"time_local":"07/Oct/2024:09:34:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/748818d7-86a6-4732-8f91-6905ef37f354 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":"d4161fe5782695f4deb93e5bad7b0ba8"} gateway-1 | {"time_local":"07/Oct/2024:09:34:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3230","request_time":"4.301","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"c5ee741390d54fdddcde884f549817a4"} experiment-1 | {"level":"info","message":"DELETE /experiments/748818d7-86a6-4732-8f91-6905ef37f354 204 167ms","method":"DELETE","requestID":"d4161fe5782695f4deb93e5bad7b0ba8","responseTime":167,"status":204,"url":"/experiments/748818d7-86a6-4732-8f91-6905ef37f354"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 126ms","method":"POST","requestID":"d82f8e52237793a5e7603fde3f65e96b","responseTime":126,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"d82f8e52237793a5e7603fde3f65e96b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 125ms","method":"POST","requestID":"a2613a2d9c6698e22eb34a18b034ee7d","responseTime":125,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"a2613a2d9c6698e22eb34a18b034ee7d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5NH0.fLxOosY0J2nm-xwCc90y0nnnx0nVaMglHRP1msAREE4","level":"info","message":"auth send jwt","requestID":"6b084c315342422272cb8d8cd7fb7a2f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6b084c315342422272cb8d8cd7fb7a2f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6b084c315342422272cb8d8cd7fb7a2f"} gateway-1 | {"time_local":"07/Oct/2024:09:34:54 +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.798","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"571f316e0f8cf890c70b50cf5b562a55"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1253,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1253,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.256036,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6b084c315342422272cb8d8cd7fb7a2f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293694,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5NH0.fLxOosY0J2nm-xwCc90y0nnnx0nVaMglHRP1msAREE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6b084c315342422272cb8d8cd7fb7a2f","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/d4d2f247-b590-4e67-b968-64c0e7b9d12b' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7c755c47-e229-49eb-8fb5-9e8e8bc70731","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.518444} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6b084c315342422272cb8d8cd7fb7a2f","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/dcc605d6-26de-451b-b8d8-e9bacd5ad480' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"57515b33-3ba8-452a-9ef9-ce4f9b7a3a4a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.523251} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6b084c315342422272cb8d8cd7fb7a2f","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"39277c0e-1507-4023-befd-f6473f359dbc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.5354826} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"54ecafe4-2385-4324-a12c-3e8adece44e4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.535563} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"6b084c315342422272cb8d8cd7fb7a2f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.535451753Z"}]},"request_id":"9e08d056-99b8-42c6-bd2d-e01a8813e1db","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.5400782} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6b084c315342422272cb8d8cd7fb7a2f","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6b084c315342422272cb8d8cd7fb7a2f"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"6b084c315342422272cb8d8cd7fb7a2f","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:54 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6b084c315342422272cb8d8cd7fb7a2f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5NH0.fLxOosY0J2nm-xwCc90y0nnnx0nVaMglHRP1msAREE4","level":"info","message":"auth send jwt","requestID":"8c5d00432ee0f45f3c3ac0d35f888187"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"8c5d00432ee0f45f3c3ac0d35f888187","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"8c5d00432ee0f45f3c3ac0d35f888187"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1254,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1254,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.681014,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:54Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8c5d00432ee0f45f3c3ac0d35f888187","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293694,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5NH0.fLxOosY0J2nm-xwCc90y0nnnx0nVaMglHRP1msAREE4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8c5d00432ee0f45f3c3ac0d35f888187","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"1c4cfbcc-0f16-4e9f-8ae6-11c75ee7d29c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.568853} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8c5d00432ee0f45f3c3ac0d35f888187","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"eb957a3a-330f-46fa-8022-f9ef31b48e5d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.573811} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8c5d00432ee0f45f3c3ac0d35f888187","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"c4ece5fd-c228-4d3e-92d6-242e27caf0a1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.5851762} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9630f72a-c02d-4ac8-af93-d96b410ab4ef","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.5854256} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"8c5d00432ee0f45f3c3ac0d35f888187","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.585132806Z"}]},"request_id":"e076e18b-ae2d-499d-b85c-e50ca2f5d476","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293694.589565} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8c5d00432ee0f45f3c3ac0d35f888187","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"8c5d00432ee0f45f3c3ac0d35f888187"} gateway-1 | {"time_local":"07/Oct/2024:09:34:54 +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":"8c5d00432ee0f45f3c3ac0d35f888187"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"8c5d00432ee0f45f3c3ac0d35f888187","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5NX0.E1ANEtf0IWe0fCKmd9zOjwP6ptpwJLYfdMBRKAQq9Ow","level":"info","message":"auth send jwt","requestID":"1de70dc884d47a5825b103067285aa9e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1de70dc884d47a5825b103067285aa9e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1de70dc884d47a5825b103067285aa9e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1255,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1255,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.875799,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1de70dc884d47a5825b103067285aa9e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293695,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5NX0.E1ANEtf0IWe0fCKmd9zOjwP6ptpwJLYfdMBRKAQq9Ow"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1de70dc884d47a5825b103067285aa9e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.535451753Z"}]},"request_id":"610d17fe-995e-44e6-8492-66bd50e9621e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293695.075372} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1de70dc884d47a5825b103067285aa9e","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"40d58e3c-32a3-4294-a933-5a0d20aa08e0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293695.0805156} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1de70dc884d47a5825b103067285aa9e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.535451753Z"}]},"request_id":"5a484b41-b5bc-43bf-b98c-f475df51478d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293695.0917788} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"1de70dc884d47a5825b103067285aa9e","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1de70dc884d47a5825b103067285aa9e"} device-1 | {"level":"info","message":"PATCH /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67 200 28ms","method":"PATCH","requestID":"1de70dc884d47a5825b103067285aa9e","responseTime":28,"status":200,"url":"/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67"} gateway-1 | {"time_local":"07/Oct/2024:09:34:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.034","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1de70dc884d47a5825b103067285aa9e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5NX0.E1ANEtf0IWe0fCKmd9zOjwP6ptpwJLYfdMBRKAQq9Ow","level":"info","message":"auth send jwt","requestID":"9300cffdd042edf4a1636727f6ee1ef0"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"9300cffdd042edf4a1636727f6ee1ef0","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9300cffdd042edf4a1636727f6ee1ef0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1256,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:55Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1256,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.845763,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:55Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9300cffdd042edf4a1636727f6ee1ef0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293695,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5NX0.E1ANEtf0IWe0fCKmd9zOjwP6ptpwJLYfdMBRKAQq9Ow"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"9300cffdd042edf4a1636727f6ee1ef0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9300cffdd042edf4a1636727f6ee1ef0"} device-1 | {"level":"info","message":"POST /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67/websocket 200 17ms","method":"POST","requestID":"9300cffdd042edf4a1636727f6ee1ef0","responseTime":17,"status":200,"url":"/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:55 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67/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.9","requestID":"9300cffdd042edf4a1636727f6ee1ef0"} device-1 | {"level":"info","message":"device 'http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0b4f627f06d74947e3dba1026a68b840","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0b4f627f06d74947e3dba1026a68b840","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/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":"0b4f627f06d74947e3dba1026a68b840"} device-1 | {"level":"info","message":"OPTIONS /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/websocket 200 1ms","method":"OPTIONS","requestID":"0b4f627f06d74947e3dba1026a68b840","responseTime":1,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0","level":"info","message":"auth send jwt","requestID":"ace03d8c877a1b52eb2cdf7a67b997d7"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ace03d8c877a1b52eb2cdf7a67b997d7","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ace03d8c877a1b52eb2cdf7a67b997d7"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1257,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1257,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.20788,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ace03d8c877a1b52eb2cdf7a67b997d7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ace03d8c877a1b52eb2cdf7a67b997d7","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ace03d8c877a1b52eb2cdf7a67b997d7"} device-1 | {"level":"info","message":"POST /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/websocket 200 22ms","method":"POST","requestID":"ace03d8c877a1b52eb2cdf7a67b997d7","responseTime":22,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:34:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/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":"ace03d8c877a1b52eb2cdf7a67b997d7"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"16981fe7b0aa2b2c7ce30adf76dfe0e3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"16981fe7b0aa2b2c7ce30adf76dfe0e3","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:34:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb? 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":"16981fe7b0aa2b2c7ce30adf76dfe0e3"} device-1 | {"level":"info","message":"OPTIONS /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb? 200 1ms","method":"OPTIONS","requestID":"16981fe7b0aa2b2c7ce30adf76dfe0e3","responseTime":1,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0","level":"info","message":"auth send jwt","requestID":"0a96d50e2a1f88fc27fcdb97017cfdc3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"0a96d50e2a1f88fc27fcdb97017cfdc3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"0a96d50e2a1f88fc27fcdb97017cfdc3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1258,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1258,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.293971,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"0a96d50e2a1f88fc27fcdb97017cfdc3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"0a96d50e2a1f88fc27fcdb97017cfdc3","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.585132806Z"}]},"request_id":"796b27fe-c81e-4da8-bec1-c409bafe3dbd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.7341788} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"0a96d50e2a1f88fc27fcdb97017cfdc3","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"527449f5-9ea3-40d1-a81c-8b5f5217b032","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.740793} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"0a96d50e2a1f88fc27fcdb97017cfdc3","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.585132806Z"}]},"request_id":"69cc5181-668e-4f85-8c41-9553f6842a89","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.752408} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"0a96d50e2a1f88fc27fcdb97017cfdc3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"0a96d50e2a1f88fc27fcdb97017cfdc3"} gateway-1 | {"time_local":"07/Oct/2024:09:34:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb? 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":"0a96d50e2a1f88fc27fcdb97017cfdc3"} device-1 | {"level":"info","message":"PATCH /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb? 200 35ms","method":"PATCH","requestID":"0a96d50e2a1f88fc27fcdb97017cfdc3","responseTime":35,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0","level":"info","message":"auth send jwt","requestID":"d6badcff2c0677ab1ff9b51744043e9c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d6badcff2c0677ab1ff9b51744043e9c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d6badcff2c0677ab1ff9b51744043e9c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1259,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1259,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.39303,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d6badcff2c0677ab1ff9b51744043e9c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d6badcff2c0677ab1ff9b51744043e9c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.535451753Z"}]},"request_id":"05b1c1c3-378e-4a9e-9b5e-a3f9fa86b0c2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.7778502} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"d6badcff2c0677ab1ff9b51744043e9c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d6badcff2c0677ab1ff9b51744043e9c"} gateway-1 | {"time_local":"07/Oct/2024:09:34:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67? 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":"d6badcff2c0677ab1ff9b51744043e9c"} device-1 | {"level":"info","message":"GET /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67? 200 16ms","method":"GET","requestID":"d6badcff2c0677ab1ff9b51744043e9c","responseTime":16,"status":200,"url":"/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0","level":"info","message":"auth send jwt","requestID":"92b998ad1dd5d67378081f52c152f4a6"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"92b998ad1dd5d67378081f52c152f4a6","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"92b998ad1dd5d67378081f52c152f4a6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1260,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1260,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.930916,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"92b998ad1dd5d67378081f52c152f4a6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"92b998ad1dd5d67378081f52c152f4a6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.585132806Z"}]},"request_id":"9e20d43d-4ec0-4cda-8fb0-26e1fa9b5085","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.798809} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"92b998ad1dd5d67378081f52c152f4a6","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"92b998ad1dd5d67378081f52c152f4a6"} gateway-1 | {"time_local":"07/Oct/2024:09:34:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb? 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":"92b998ad1dd5d67378081f52c152f4a6"} device-1 | {"level":"info","message":"GET /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb? 200 11ms","method":"GET","requestID":"92b998ad1dd5d67378081f52c152f4a6","responseTime":11,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0","level":"info","message":"auth send jwt","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fe67a7ec2cfc264b8340e8c649218aeb","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1261,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1261,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.836898,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"fe67a7ec2cfc264b8340e8c649218aeb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fe67a7ec2cfc264b8340e8c649218aeb","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Attempting to run experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Attempting to book experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Successfully booked experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a2e6570-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a2e8c80-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1262,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1262,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.091831,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a2e6570-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6a2e6570-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56052","level":"info","msg":"Received request.","req_id":1263,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56052","level":"info","msg":"Sent response.","req_id":1263,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.280272,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a2e8c80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"6a2e8c80-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.535451753Z"}]},"request_id":"d5a216a0-0308-4523-9576-9f18c441882b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.8493571} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6a2e6570-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.585132806Z"}]},"request_id":"c8f69e9b-271c-40d2-910c-7d8f10df82b6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.8540514} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a2e6570-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6a2e8c80-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67? 200 17ms","method":"GET","requestID":"6a2e6570-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a2e8c80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb? 200 19ms","method":"GET","requestID":"6a2e8c80-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Setting up experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Successfully locked booking for experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Attempting to update booking for experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Successfully updated booking for experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Successfully set up experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a398900-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a39d720-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a3a2540-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Successfully running experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1264,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56052","level":"info","msg":"Received request.","req_id":1265,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1264,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.93928,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a398900-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6a398900-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56052","level":"info","msg":"Sent response.","req_id":1265,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.701829,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a39d720-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6a39d720-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1266,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"92bb1b4d-befc-4403-9028-75fb3b9f84f6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.9228916} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.585132806Z"}]},"request_id":"d1fb360a-8b1e-4bfd-9f92-30838180ff10","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.9255095} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1266,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.753104,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a3a2540-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","object_type":"device","rebac_allow":false,"scope_allow":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":"6a3a2540-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a3a2540-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"6a39d720-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"POST /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67/signaling 200 15ms","method":"POST","requestID":"6a3a2540-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.535451753Z"}]},"request_id":"57d1c3dd-659d-49ff-b6eb-41f5451d7b98","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.9263883} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"6a398900-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a3cbd50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F599dc33a-22b6-42ff-83e9-364bb43be1a4#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F599dc33a-22b6-42ff-83e9-364bb43be1a4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"5b6c7243-6195-44f7-bfe4-ca8c75a1df02","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.9361882} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a39d720-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"11a3411d-ae25-4cac-868e-5213d1bded71","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.9363282} device-1 | {"level":"info","message":"GET /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb? 200 23ms","method":"GET","requestID":"6a39d720-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a398900-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1267,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} device-1 | {"level":"info","message":"GET /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67? 200 26ms","method":"GET","requestID":"6a398900-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67?"} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"fe67a7ec2cfc264b8340e8c649218aeb","responseTime":17,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8186eb28-ad48-44e2-93ae-cfb859ec0296","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.939083} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1267,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.64045,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a3cbd50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","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":"6a3dcec0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6a3cbd50-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1268,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a3cbd50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/signaling 200 11ms","method":"POST","requestID":"6a3cbd50-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6d429790-3a84-4e88-9bde-0c0983c753bd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.9447143} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1268,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.405127,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a3dcec0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","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":"07/Oct/2024:09:34:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 139ms","method":"POST","requestID":"fe67a7ec2cfc264b8340e8c649218aeb","responseTime":139,"status":201,"url":"/experiments?"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6a3dcec0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a3dcec0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67/signaling 200 11ms","method":"POST","requestID":"6a3dcec0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0","level":"info","message":"auth send jwt","requestID":"c9896706c83caef825ed9015c37d88d6"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c9896706c83caef825ed9015c37d88d6","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a3fca90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c9896706c83caef825ed9015c37d88d6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1269,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56052","level":"info","msg":"Received request.","req_id":1270,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56052","level":"info","msg":"Sent response.","req_id":1270,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.809307,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c9896706c83caef825ed9015c37d88d6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c9896706c83caef825ed9015c37d88d6","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3c1335c-42ba-4eac-a447-0e63f46f75f3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.9586751} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1269,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.417777,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a3fca90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","object_type":"device","rebac_allow":false,"scope_allow":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":"6a3fca90-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.535451753Z"}]},"request_id":"991218eb-b0cf-4fed-97fb-f3b174a7abe0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.9635623} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a3fca90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/signaling 200 11ms","method":"POST","requestID":"6a3fca90-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c9896706c83caef825ed9015c37d88d6","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a41c660-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c9896706c83caef825ed9015c37d88d6"} gateway-1 | {"time_local":"07/Oct/2024:09:34:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67? 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":"c9896706c83caef825ed9015c37d88d6"} device-1 | {"level":"info","message":"GET /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67? 200 14ms","method":"GET","requestID":"c9896706c83caef825ed9015c37d88d6","responseTime":14,"status":200,"url":"/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6a423b90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1271,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1271,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.79852,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:56052","level":"info","msg":"Received request.","req_id":1272,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a41c660-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6a41c660-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:56052","level":"info","msg":"Sent response.","req_id":1272,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.710258,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0","level":"info","message":"auth send jwt","requestID":"82810300f7603205535f94d72097d11b"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a423b90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"82810300f7603205535f94d72097d11b","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6a423b90-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"82810300f7603205535f94d72097d11b"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.535451753Z"}]},"request_id":"e47276fb-dd40-48e6-be0c-c67a4c99d63b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.9765732} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6a41c660-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.585132806Z"}]},"request_id":"96b65797-c63f-4877-a1dd-719b29830bcb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.97776} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6a423b90-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1273,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1273,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.8864,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"82810300f7603205535f94d72097d11b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"82810300f7603205535f94d72097d11b","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a41c660-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67? 200 16ms","method":"GET","requestID":"6a41c660-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6a423b90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb? 200 16ms","method":"GET","requestID":"6a423b90-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:54.585132806Z"}]},"request_id":"4e16ba88-be77-42d5-93ae-101c7e0686b0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293696.9862564} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Building connection plan","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} 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":"d1f381fb-02be-4853-bb7f-e20827475a0d"},{"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":"3e3aadc4-109e-435d-bcde-3712f88e6746"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"8d6679c0-2d7a-43a6-92d0-6463488da210"}]},"level":"info","message":"Built pairwise service configurations","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"82810300f7603205535f94d72097d11b","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"iceServers":[{"urls":"stun:stun.goldi-labs.de:3478"},{"credential":"goldi","urls":"turn:turn.goldi-labs.de:3478","username":"goldi"}]},"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","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/3c4857e1-206a-46fe-b0b6-9e24d555bbdb"},{"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/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6a4521c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"82810300f7603205535f94d72097d11b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1274,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:56Z"} device-1 | {"level":"info","message":"GET /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb? 200 15ms","method":"GET","requestID":"82810300f7603205535f94d72097d11b","responseTime":15,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:56 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb? 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":"82810300f7603205535f94d72097d11b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1274,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.858523,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:56Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a4521c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293696,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5Nn0.b-i8huTTUR1ujdfszIr1No3eMm3z6JOiWO_V6y46Qq0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6a4521c0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"ebefafc3-b67b-4fb0-a71f-48b4959290b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293697.000266} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d18a5fb9-bb94-4fbb-aa5a-7000a5913698","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293697.0004828} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6a4521c0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6a4521c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6a4521c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5'","requestID":"6a4521c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5'","requestID":"6a4521c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6a4521c0-848f-11ef-9233-95baf63f17e0"} 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":"6a4521c0-848f-11ef-9233-95baf63f17e0","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":"6a4521c0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"fe67a7ec2cfc264b8340e8c649218aeb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a4cc2e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1275,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:57Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"718bcf8c-ca20-4d29-8c46-84c83b117dc2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293697.0428932} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1275,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.298908,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a4cc2e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","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":"3c4857e1-206a-46fe-b0b6-9e24d555bbdb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"3c4857e1-206a-46fe-b0b6-9e24d555bbdb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6a4cc2e0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a4cc2e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67/signaling 200 9ms","method":"POST","requestID":"6a4cc2e0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6a4e7090-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1276,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:57Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f2c26c9f-3d82-484b-af5a-654592605b64","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293697.052697} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1276,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.248359,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:57Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6a4e7090-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","object_type":"device","rebac_allow":false,"scope_allow":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":"6a4e7090-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6a4e7090-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/signaling 200 7ms","method":"POST","requestID":"6a4e7090-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/signaling"} device-1 | {"device":"10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","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":"a5e3e970-e453-429b-a4c6-66c80b4324b5","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 1226017618612472087 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:Ucem\r\na=ice-pwd:b3Zjj34TaaM4/t36Qv+OY4lG\r\na=ice-options:trickle\r\na=fingerprint:sha-256 FB:B2:53:27:75:63:98:87:90:2D:3F:76:6F:C8:CC:86:4B:43:5C:93:8F:F4:81:A0:83:6D:CA:AF:51:B7:76:2A\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"3c4857e1-206a-46fe-b0b6-9e24d555bbdb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:4183328090 1 udp 2113937151 e8843a48-81ba-4038-ac96-fc14500cde1c.local 45402 typ host generation 0 ufrag Ucem network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3c4857e1-206a-46fe-b0b6-9e24d555bbdb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"3c4857e1-206a-46fe-b0b6-9e24d555bbdb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:1785930825 1 udp 1677729535 141.24.211.56 45402 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag Ucem network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3c4857e1-206a-46fe-b0b6-9e24d555bbdb","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/a5e3e970-e453-429b-a4c6-66c80b4324b5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a5e3e970-e453-429b-a4c6-66c80b4324b5","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","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":"10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","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":"10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","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":"3aee000bb8f88bbbf98389345439a3e7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"3aee000bb8f88bbbf98389345439a3e7","responseTime":1,"status":200,"url":"/auth"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb'"} device-1 | {"device":"3c4857e1-206a-46fe-b0b6-9e24d555bbdb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","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/3c4857e1-206a-46fe-b0b6-9e24d555bbdb"},{"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/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5"}}},"level":"info","message":"received a callback","requestID":"3aee000bb8f88bbbf98389345439a3e7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"3aee000bb8f88bbbf98389345439a3e7","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.010","http_referrer":"","http_user_agent":"node-fetch","requestID":"3aee000bb8f88bbbf98389345439a3e7"} device-1 | {"data":{"peerconnection":"a5e3e970-e453-429b-a4c6-66c80b4324b5","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","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":"3c4857e1-206a-46fe-b0b6-9e24d555bbdb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","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":"a5e3e970-e453-429b-a4c6-66c80b4324b5","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"3c4857e1-206a-46fe-b0b6-9e24d555bbdb","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/a5e3e970-e453-429b-a4c6-66c80b4324b5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a5e3e970-e453-429b-a4c6-66c80b4324b5","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"077a1144d97b4bebdcf6b4d67c4ce44c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"077a1144d97b4bebdcf6b4d67c4ce44c","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":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","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/3c4857e1-206a-46fe-b0b6-9e24d555bbdb"},{"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/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5"}}},"level":"info","message":"received a callback","requestID":"077a1144d97b4bebdcf6b4d67c4ce44c"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6b91c600-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1277,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa5e3e970-e453-429b-a4c6-66c80b4324b5","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"65a686e0-fdeb-41b9-8dfa-2161f31d6ce6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.1730359} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1277,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.883458,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6b91c600-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5","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":"6b91c600-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6b91c600-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5 200 9ms","method":"GET","requestID":"6b91c600-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"077a1144d97b4bebdcf6b4d67c4ce44c","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"077a1144d97b4bebdcf6b4d67c4ce44c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6b959690-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1278,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8c23ee59-6320-4614-b847-e85f5525cb71","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.1972258} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1278,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.177581,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6b959690-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","object_type":"device","rebac_allow":false,"scope_allow":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":"6b959690-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6b959690-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/signaling 200 8ms","method":"POST","requestID":"6b959690-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6b96f620-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1279,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"54dce2b8-a2f6-4e91-8ea2-fa92bd516bb6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.2080493} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1279,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.190994,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6b96f620-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","object_type":"device","rebac_allow":false,"scope_allow":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":"6b96f620-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6b96f620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67/signaling 200 10ms","method":"POST","requestID":"6b96f620-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5OX0.pgIrOGLLn7WCNXJXgFCsOr406Al7ycbCfsoDzkjvPsU","level":"info","message":"auth send jwt","requestID":"b3a5deec17c2136fb987d69908fd7597"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"b3a5deec17c2136fb987d69908fd7597","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4","requestID":"b3a5deec17c2136fb987d69908fd7597"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1280,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1280,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.773442,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b3a5deec17c2136fb987d69908fd7597","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293699,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5OX0.pgIrOGLLn7WCNXJXgFCsOr406Al7ycbCfsoDzkjvPsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b3a5deec17c2136fb987d69908fd7597","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4","requestID":"b3a5deec17c2136fb987d69908fd7597"} gateway-1 | {"time_local":"07/Oct/2024:09:34:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b3a5deec17c2136fb987d69908fd7597"} experiment-1 | {"level":"info","message":"GET /experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4 200 10ms","method":"GET","requestID":"b3a5deec17c2136fb987d69908fd7597","responseTime":10,"status":200,"url":"/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5OX0.pgIrOGLLn7WCNXJXgFCsOr406Al7ycbCfsoDzkjvPsU","level":"info","message":"auth send jwt","requestID":"b63bf40046938ec0a819825f0a57864c"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b63bf40046938ec0a819825f0a57864c","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4","requestID":"b63bf40046938ec0a819825f0a57864c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1281,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1281,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.67625,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b63bf40046938ec0a819825f0a57864c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293699,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5OX0.pgIrOGLLn7WCNXJXgFCsOr406Al7ycbCfsoDzkjvPsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b63bf40046938ec0a819825f0a57864c","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Attempting to finish experiment","requestID":"b63bf40046938ec0a819825f0a57864c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6ba43c90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1282,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1282,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.145837,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6ba43c90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293699,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5OX0.pgIrOGLLn7WCNXJXgFCsOr406Al7ycbCfsoDzkjvPsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6ba43c90-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5","device":"3c4857e1-206a-46fe-b0b6-9e24d555bbdb","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","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":"10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","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":"10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","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/a5e3e970-e453-429b-a4c6-66c80b4324b5' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"a5e3e970-e453-429b-a4c6-66c80b4324b5","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa5e3e970-e453-429b-a4c6-66c80b4324b5': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fa5e3e970-e453-429b-a4c6-66c80b4324b5","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"a7b7934b-bad1-4125-bafd-e5fb5f5e2225","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.310619} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7fad117d47389177d0856083bdfbf27c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7fad117d47389177d0856083bdfbf27c","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"77741379c9e37042d9d219932849b42d","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"77741379c9e37042d9d219932849b42d","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/3c4857e1-206a-46fe-b0b6-9e24d555bbdb"},{"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/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5"}}},"level":"info","message":"received a callback","requestID":"7fad117d47389177d0856083bdfbf27c"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba90023a-7616-4edd-935c-40b9ca3467ae","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.3114307} 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":"connected","url":"http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb"},{"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/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5"}}},"level":"info","message":"received a callback","requestID":"77741379c9e37042d9d219932849b42d"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"6ba43c90-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"a5e3e970-e453-429b-a4c6-66c80b4324b5","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6ba43c90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5 204 48ms","method":"DELETE","requestID":"6ba43c90-848f-11ef-9233-95baf63f17e0","responseTime":48,"status":204,"url":"/peerconnections/a5e3e970-e453-429b-a4c6-66c80b4324b5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"},"level":"info","message":"Successfully finished experiment","requestID":"b63bf40046938ec0a819825f0a57864c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bae9cd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1283,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3c4857e1-206a-46fe-b0b6-9e24d555bbdb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8e827d61-eb9c-4ca3-a60e-25886e9a7402","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.364123} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1283,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.04188,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6bae9cd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb","object_type":"device","rebac_allow":false,"scope_allow":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":"6bae9cd0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bae9cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/signaling 200 14ms","method":"POST","requestID":"6bae9cd0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F599dc33a-22b6-42ff-83e9-364bb43be1a4': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F599dc33a-22b6-42ff-83e9-364bb43be1a4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"f5eee7e9-61d8-4487-a652-5a9f9c48eace","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.3717506} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"828f87d1-397a-4a48-8a61-3e9446228939","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.3725019} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6bb134e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"b63bf40046938ec0a819825f0a57864c","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1284,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"beef846e-1e20-4e0a-b3dd-d1e9adc61016","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.3815508} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1284,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.107963,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6bb134e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67","object_type":"device","rebac_allow":false,"scope_allow":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":"6bb134e0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6bb134e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67/signaling 200 14ms","method":"POST","requestID":"6bb134e0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4","requestID":"b63bf40046938ec0a819825f0a57864c"} gateway-1 | {"time_local":"07/Oct/2024:09:34:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.166","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"b63bf40046938ec0a819825f0a57864c"} experiment-1 | {"level":"info","message":"DELETE /experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4 204 163ms","method":"DELETE","requestID":"b63bf40046938ec0a819825f0a57864c","responseTime":163,"status":204,"url":"/experiments/599dc33a-22b6-42ff-83e9-364bb43be1a4"} gateway-1 | {"time_local":"07/Oct/2024:09:34:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3233","request_time":"4.322","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"c0c00d906b1423a7a7a021d173212513"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"7fad117d47389177d0856083bdfbf27c","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.133","http_referrer":"","http_user_agent":"node-fetch","requestID":"7fad117d47389177d0856083bdfbf27c"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"77741379c9e37042d9d219932849b42d","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:34: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.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"77741379c9e37042d9d219932849b42d"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5OX0.pgIrOGLLn7WCNXJXgFCsOr406Al7ycbCfsoDzkjvPsU","level":"info","message":"auth send jwt","requestID":"4c7187ddc8481a12d0601788633cb922"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4c7187ddc8481a12d0601788633cb922","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4c7187ddc8481a12d0601788633cb922"} gateway-1 | {"time_local":"07/Oct/2024:09:34:59 +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.777","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"2197e2b63215b9ad2f3eec5b31959c35"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1285,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1285,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.786507,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4c7187ddc8481a12d0601788633cb922","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293699,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5OX0.pgIrOGLLn7WCNXJXgFCsOr406Al7ycbCfsoDzkjvPsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4c7187ddc8481a12d0601788633cb922","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/10e245ed-3ecb-458a-9e4e-2b5e73fb6f67' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5e1cf2b6-b155-465a-8211-256b61bccf7b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.4699886} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4c7187ddc8481a12d0601788633cb922","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7a9040f5-97c4-4c6a-88a9-943643e6321e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.4745514} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3c4857e1-206a-46fe-b0b6-9e24d555bbdb' closed"} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4c7187ddc8481a12d0601788633cb922","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"2df56dce-a4b7-4a9e-bd60-de3b9efa24cc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.4843862} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"28c900d0-80ab-4d28-a8f4-168875ed403a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.484548} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"4c7187ddc8481a12d0601788633cb922","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.484354007Z"}]},"request_id":"9f789b74-efd9-4262-b720-29e3bb99f16f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.4886632} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4c7187ddc8481a12d0601788633cb922","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4c7187ddc8481a12d0601788633cb922"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"4c7187ddc8481a12d0601788633cb922","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:34:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4c7187ddc8481a12d0601788633cb922"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5OX0.pgIrOGLLn7WCNXJXgFCsOr406Al7ycbCfsoDzkjvPsU","level":"info","message":"auth send jwt","requestID":"4f8d871e9c2e774a4e97ab0b698fc4bd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4f8d871e9c2e774a4e97ab0b698fc4bd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4f8d871e9c2e774a4e97ab0b698fc4bd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1286,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1286,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.643185,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:34:59Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4f8d871e9c2e774a4e97ab0b698fc4bd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293699,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzY5OX0.pgIrOGLLn7WCNXJXgFCsOr406Al7ycbCfsoDzkjvPsU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"4f8d871e9c2e774a4e97ab0b698fc4bd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"fec1ce66-be4d-45f0-aea8-66de7a8a4239","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.5166454} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4f8d871e9c2e774a4e97ab0b698fc4bd","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6cb86b67-58de-42a8-b1bc-ff0c3305fba7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.5207996} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4f8d871e9c2e774a4e97ab0b698fc4bd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"cfe4f164-f3d1-465f-8c08-affe999d25c5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.5314493} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b59def63-15cf-4893-93fe-6bd7045e0a9c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.5315998} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"4f8d871e9c2e774a4e97ab0b698fc4bd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.531416179Z"}]},"request_id":"c2e27703-74da-480b-af80-5fe3080354c8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293699.5354226} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4f8d871e9c2e774a4e97ab0b698fc4bd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4f8d871e9c2e774a4e97ab0b698fc4bd"} gateway-1 | {"time_local":"07/Oct/2024:09:34:59 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4f8d871e9c2e774a4e97ab0b698fc4bd"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"4f8d871e9c2e774a4e97ab0b698fc4bd","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMH0.nMzXq3B_EzD8bTmybdzdYZAXcBT4Eaxwjsi_Yyqsk5k","level":"info","message":"auth send jwt","requestID":"ee946436f8298a55c3a24b76101e1f89"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ee946436f8298a55c3a24b76101e1f89","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ee946436f8298a55c3a24b76101e1f89"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1287,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1287,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.091713,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ee946436f8298a55c3a24b76101e1f89","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293700,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMH0.nMzXq3B_EzD8bTmybdzdYZAXcBT4Eaxwjsi_Yyqsk5k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"ee946436f8298a55c3a24b76101e1f89","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.484354007Z"}]},"request_id":"f8eb81ae-e590-4719-88b8-f51d26c880ee","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293700.0218658} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ee946436f8298a55c3a24b76101e1f89","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da628dae-6b1a-4acd-a77c-201f619f6421","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293700.0271711} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ee946436f8298a55c3a24b76101e1f89","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.484354007Z"}]},"request_id":"72c82428-6d6c-4767-bf36-9090e0af9b91","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293700.0395632} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ee946436f8298a55c3a24b76101e1f89","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ee946436f8298a55c3a24b76101e1f89"} device-1 | {"level":"info","message":"PATCH /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9 200 31ms","method":"PATCH","requestID":"ee946436f8298a55c3a24b76101e1f89","responseTime":31,"status":200,"url":"/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9"} gateway-1 | {"time_local":"07/Oct/2024:09:35:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.037","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"ee946436f8298a55c3a24b76101e1f89"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMH0.nMzXq3B_EzD8bTmybdzdYZAXcBT4Eaxwjsi_Yyqsk5k","level":"info","message":"auth send jwt","requestID":"00ad4754f63f986929d00bfe0351f64f"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"00ad4754f63f986929d00bfe0351f64f","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"00ad4754f63f986929d00bfe0351f64f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1288,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:00Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1288,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.081903,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:00Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"00ad4754f63f986929d00bfe0351f64f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293700,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMH0.nMzXq3B_EzD8bTmybdzdYZAXcBT4Eaxwjsi_Yyqsk5k"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"00ad4754f63f986929d00bfe0351f64f","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"00ad4754f63f986929d00bfe0351f64f"} device-1 | {"level":"info","message":"POST /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9/websocket 200 17ms","method":"POST","requestID":"00ad4754f63f986929d00bfe0351f64f","responseTime":17,"status":200,"url":"/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:00 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9/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.9","requestID":"00ad4754f63f986929d00bfe0351f64f"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"01d16b21ff8be49d1898ed6d126c2fbe","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"01d16b21ff8be49d1898ed6d126c2fbe","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b766869f-224f-41a7-9c3e-61a68e88e11b/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":"01d16b21ff8be49d1898ed6d126c2fbe"} device-1 | {"level":"info","message":"OPTIONS /devices/b766869f-224f-41a7-9c3e-61a68e88e11b/websocket 200 1ms","method":"OPTIONS","requestID":"01d16b21ff8be49d1898ed6d126c2fbe","responseTime":1,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU","level":"info","message":"auth send jwt","requestID":"3206a90027743b21891aa920d7708a2a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3206a90027743b21891aa920d7708a2a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"3206a90027743b21891aa920d7708a2a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1289,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1289,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.21735,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3206a90027743b21891aa920d7708a2a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"3206a90027743b21891aa920d7708a2a","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"3206a90027743b21891aa920d7708a2a"} gateway-1 | {"time_local":"07/Oct/2024:09:35:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b766869f-224f-41a7-9c3e-61a68e88e11b/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":"3206a90027743b21891aa920d7708a2a"} device-1 | {"level":"info","message":"POST /devices/b766869f-224f-41a7-9c3e-61a68e88e11b/websocket 200 21ms","method":"POST","requestID":"3206a90027743b21891aa920d7708a2a","responseTime":21,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"433bd7319dc61a8248c3896cf2035dd7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"433bd7319dc61a8248c3896cf2035dd7","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b766869f-224f-41a7-9c3e-61a68e88e11b? 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":"433bd7319dc61a8248c3896cf2035dd7"} device-1 | {"level":"info","message":"OPTIONS /devices/b766869f-224f-41a7-9c3e-61a68e88e11b? 200 1ms","method":"OPTIONS","requestID":"433bd7319dc61a8248c3896cf2035dd7","responseTime":1,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU","level":"info","message":"auth send jwt","requestID":"4c11e5b6f99048b1252c7dbf854a88fb"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"4c11e5b6f99048b1252c7dbf854a88fb","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4c11e5b6f99048b1252c7dbf854a88fb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1290,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1290,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.25485,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4c11e5b6f99048b1252c7dbf854a88fb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4c11e5b6f99048b1252c7dbf854a88fb","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.531416179Z"}]},"request_id":"b348e10b-32f2-424b-89e8-444b5bffca95","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.661487} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4c11e5b6f99048b1252c7dbf854a88fb","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"340f1340-e720-4841-8fba-53db8a1c9022","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.6693041} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"4c11e5b6f99048b1252c7dbf854a88fb","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.531416179Z"}]},"request_id":"3685a8ca-4665-43fc-a7c1-21ec3534271c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.6809716} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"4c11e5b6f99048b1252c7dbf854a88fb","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4c11e5b6f99048b1252c7dbf854a88fb"} gateway-1 | {"time_local":"07/Oct/2024:09:35:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b766869f-224f-41a7-9c3e-61a68e88e11b? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"4c11e5b6f99048b1252c7dbf854a88fb"} device-1 | {"level":"info","message":"PATCH /devices/b766869f-224f-41a7-9c3e-61a68e88e11b? 200 36ms","method":"PATCH","requestID":"4c11e5b6f99048b1252c7dbf854a88fb","responseTime":36,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU","level":"info","message":"auth send jwt","requestID":"a08628f75851d4f0bc3e41347f7531d0"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a08628f75851d4f0bc3e41347f7531d0","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a08628f75851d4f0bc3e41347f7531d0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1291,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1291,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.138616,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a08628f75851d4f0bc3e41347f7531d0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a08628f75851d4f0bc3e41347f7531d0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.484354007Z"}]},"request_id":"46c4a674-0824-4051-8f45-20dba17d9b0d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.7086318} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a08628f75851d4f0bc3e41347f7531d0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a08628f75851d4f0bc3e41347f7531d0"} gateway-1 | {"time_local":"07/Oct/2024:09:35:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9? 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":"a08628f75851d4f0bc3e41347f7531d0"} device-1 | {"level":"info","message":"GET /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9? 200 15ms","method":"GET","requestID":"a08628f75851d4f0bc3e41347f7531d0","responseTime":15,"status":200,"url":"/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU","level":"info","message":"auth send jwt","requestID":"26b2e9a0c7d814e22056e96489856e86"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"26b2e9a0c7d814e22056e96489856e86","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"26b2e9a0c7d814e22056e96489856e86"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1292,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1292,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.919628,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26b2e9a0c7d814e22056e96489856e86","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"26b2e9a0c7d814e22056e96489856e86","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.531416179Z"}]},"request_id":"b79d18cd-2f7b-44fd-b7ee-32240d4611f7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.730673} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"26b2e9a0c7d814e22056e96489856e86","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"26b2e9a0c7d814e22056e96489856e86"} device-1 | {"level":"info","message":"GET /devices/b766869f-224f-41a7-9c3e-61a68e88e11b? 200 15ms","method":"GET","requestID":"26b2e9a0c7d814e22056e96489856e86","responseTime":15,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b766869f-224f-41a7-9c3e-61a68e88e11b? 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":"26b2e9a0c7d814e22056e96489856e86"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU","level":"info","message":"auth send jwt","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"48acf34b5fde756ad0cc3aae30ece4bc","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1293,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1293,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.315602,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"48acf34b5fde756ad0cc3aae30ece4bc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"48acf34b5fde756ad0cc3aae30ece4bc","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Attempting to run experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Attempting to book experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Successfully booked experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d2166b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d218dc0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1294,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1294,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.071021,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d2166b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d2166b0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1295,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1295,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.007525,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d218dc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"6d218dc0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.484354007Z"}]},"request_id":"fcc0d849-74f9-4fa5-8008-246bd9afaba8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.797274} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d2166b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.531416179Z"}]},"request_id":"9e74cb32-1fa9-4890-8522-909c03c92cb2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.8007932} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6d218dc0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d2166b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9? 200 15ms","method":"GET","requestID":"6d2166b0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d218dc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b766869f-224f-41a7-9c3e-61a68e88e11b? 200 17ms","method":"GET","requestID":"6d218dc0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Setting up experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Successfully locked booking for experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Attempting to update booking for experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Successfully updated booking for experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Successfully set up experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d2b51c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d2b78d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d2b9fe0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Successfully running experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1296,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1296,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.830732,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1297,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d2b51c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6d2b51c0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1297,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.909868,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d2b78d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6d2b78d0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43650","level":"info","msg":"Received request.","req_id":1298,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35: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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.484354007Z"}]},"request_id":"c4d6bb0c-fad2-4103-91f0-63f536f73b7e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.8640466} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5a990c4f-daae-49f7-8a9a-9be21c04cb14","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.8648722} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6d2b51c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.531416179Z"}]},"request_id":"7904a342-4c94-4f28-a569-b7604efa8798","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.8653097} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6d2b78d0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:43650","level":"info","msg":"Sent response.","req_id":1298,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.580013,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d2b9fe0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","object_type":"device","rebac_allow":false,"scope_allow":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":"6d2b9fe0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d2b51c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9? 200 18ms","method":"GET","requestID":"6d2b51c0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d2b78d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b766869f-224f-41a7-9c3e-61a68e88e11b? 200 17ms","method":"GET","requestID":"6d2b78d0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d2b9fe0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9/signaling 200 17ms","method":"POST","requestID":"6d2b9fe0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d2e8610-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d2ead20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c25ffaf-5819-43d0-a2c0-0a64deb124b6#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c25ffaf-5819-43d0-a2c0-0a64deb124b6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"2cf3815b-aa8d-4814-906f-9d469607325c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.875492} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4966a193-9295-441a-8178-6558e13e6620","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.8758142} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"39367111-83b4-4577-9871-34f3236d9f2b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.8788633} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c6042e8f-dc29-46e5-8aa8-a272d252e3a9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.8793406} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1299,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1300,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1299,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.23377,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1300,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.451155,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"48acf34b5fde756ad0cc3aae30ece4bc","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d2e8610-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","object_type":"device","rebac_allow":false,"scope_allow":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":"6d2e8610-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d2ead20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","object_type":"device","rebac_allow":false,"scope_allow":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":"6d2ead20-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d2e8610-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9/signaling 200 14ms","method":"POST","requestID":"6d2e8610-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d2ead20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b766869f-224f-41a7-9c3e-61a68e88e11b/signaling 200 13ms","method":"POST","requestID":"6d2ead20-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d30f710-848f-11ef-9233-95baf63f17e0"} gateway-1 | {"time_local":"07/Oct/2024:09:35:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.153","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} experiment-1 | {"level":"info","message":"POST /experiments? 201 146ms","method":"POST","requestID":"48acf34b5fde756ad0cc3aae30ece4bc","responseTime":146,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1301,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"32088a79-ff19-4736-8a38-614f6afb9705","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.8941865} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU","level":"info","message":"auth send jwt","requestID":"7082d864b6b6bbb21338128daf125dfe"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7082d864b6b6bbb21338128daf125dfe","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1301,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.906276,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7082d864b6b6bbb21338128daf125dfe"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d30f710-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d30f710-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1302,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1302,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.87884,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d30f710-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b766869f-224f-41a7-9c3e-61a68e88e11b/signaling 200 9ms","method":"POST","requestID":"6d30f710-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7082d864b6b6bbb21338128daf125dfe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7082d864b6b6bbb21338128daf125dfe","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d32a4c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6d32cbd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.484354007Z"}]},"request_id":"deb58adf-f1f5-46b1-a5d4-1158be00737b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.9017842} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7082d864b6b6bbb21338128daf125dfe","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1303,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1303,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.634827,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d32a4c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6d32a4c0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1304,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1304,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.602618,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d32cbd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"6d32cbd0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7082d864b6b6bbb21338128daf125dfe"} gateway-1 | {"time_local":"07/Oct/2024:09:35:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9? 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":"7082d864b6b6bbb21338128daf125dfe"} device-1 | {"level":"info","message":"GET /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9? 200 11ms","method":"GET","requestID":"7082d864b6b6bbb21338128daf125dfe","responseTime":11,"status":200,"url":"/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.484354007Z"}]},"request_id":"e21f64db-c591-40d1-8779-d3caca40fbe2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.9074576} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6d32a4c0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d32a4c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.531416179Z"}]},"request_id":"ccd91d49-a129-4989-a985-af293be78b7d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.9104002} device-1 | {"level":"info","message":"GET /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9? 200 11ms","method":"GET","requestID":"6d32a4c0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU","level":"info","message":"auth send jwt","requestID":"3e7eca6a48b7c7b6c83c0b5bb3db0c8d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3e7eca6a48b7c7b6c83c0b5bb3db0c8d","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6d32cbd0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3e7eca6a48b7c7b6c83c0b5bb3db0c8d"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6d32cbd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b766869f-224f-41a7-9c3e-61a68e88e11b? 200 13ms","method":"GET","requestID":"6d32cbd0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1305,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1305,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.649826,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Building connection plan","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} 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":"af9bbe4a-6241-4f7c-8a87-e3b43b12023a"},{"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":"3726f4e5-dcb4-4bfc-bead-dca9f904d46b"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"5789f94f-6a49-40b7-bc36-66e16eb21dde"}]},"level":"info","message":"Built pairwise service configurations","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} 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/b766869f-224f-41a7-9c3e-61a68e88e11b"},{"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/ab174b75-ccaa-48a7-add8-c0d972cfe8a9"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3e7eca6a48b7c7b6c83c0b5bb3db0c8d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3e7eca6a48b7c7b6c83c0b5bb3db0c8d","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6d353cd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:34:59.531416179Z"}]},"request_id":"f05b3a4e-dbd5-44dd-80d2-75f9baaf4cad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.9185522} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"3e7eca6a48b7c7b6c83c0b5bb3db0c8d","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1306,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1306,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.619102,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d353cd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293701,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwMX0._V3b67-SwdUVDLyANt6mVHbRnJDD_B5eFUpNuDUZddU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"6d353cd0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3e7eca6a48b7c7b6c83c0b5bb3db0c8d"} gateway-1 | {"time_local":"07/Oct/2024:09:35:01 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b766869f-224f-41a7-9c3e-61a68e88e11b? 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":"3e7eca6a48b7c7b6c83c0b5bb3db0c8d"} device-1 | {"level":"info","message":"GET /devices/b766869f-224f-41a7-9c3e-61a68e88e11b? 200 11ms","method":"GET","requestID":"3e7eca6a48b7c7b6c83c0b5bb3db0c8d","responseTime":11,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"94562eb9-24e6-4d8f-a919-279b2a13fe0c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.9281144} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"de18dcf6-bfcc-4f07-a9ad-a58d77be71b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.928414} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6d353cd0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6d353cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6d353cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48'","requestID":"6d353cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48'","requestID":"6d353cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6d353cd0-848f-11ef-9233-95baf63f17e0"} 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":"6d353cd0-848f-11ef-9233-95baf63f17e0","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":"6d353cd0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"48acf34b5fde756ad0cc3aae30ece4bc"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d3cb6e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1307,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"16177fe0-d347-42fb-959d-dc7f9fe2ce9b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.9714875} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1307,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.894866,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d3cb6e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","object_type":"device","rebac_allow":false,"scope_allow":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":"6d3cb6e0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d3cb6e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9/signaling 200 9ms","method":"POST","requestID":"6d3cb6e0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6d3e3d80-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1308,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dab39215-3231-49cb-bbc4-52841a6c1f0c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293701.9806876} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1308,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.571132,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:01Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d3e3d80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6d3e3d80-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"b766869f-224f-41a7-9c3e-61a68e88e11b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"b766869f-224f-41a7-9c3e-61a68e88e11b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6d3e3d80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b766869f-224f-41a7-9c3e-61a68e88e11b/signaling 200 11ms","method":"POST","requestID":"6d3e3d80-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b/signaling"} device-1 | {"device":"ab174b75-ccaa-48a7-add8-c0d972cfe8a9","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":"cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"content":{"sdp":"v=0\r\no=- 7106920860221604313 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:QSDU\r\na=ice-pwd:cL7L+GbxhoCwe3QmCEDKozyn\r\na=ice-options:trickle\r\na=fingerprint:sha-256 73:F6:DE:92:DD:12:4F:EC:AE:B2:61:06:76:3F:3F:87:E5:E9:0E:EF:19:76:AE:11:9C:EF:56:A7:20:42:06:79\r\na=setup:active\r\na=mid:0\r\na=sctpmap:5000 webrtc-datachannel 1024\r\n","type":"answer"},"device":"b766869f-224f-41a7-9c3e-61a68e88e11b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:831034192 1 udp 2113937151 e9b5e233-8a9b-4443-bdd1-9ac477facd7c.local 45829 typ host generation 0 ufrag QSDU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b766869f-224f-41a7-9c3e-61a68e88e11b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"device":"b766869f-224f-41a7-9c3e-61a68e88e11b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"content":{"candidate":"candidate:2728604227 1 udp 1677729535 141.24.211.56 45829 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag QSDU network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"b766869f-224f-41a7-9c3e-61a68e88e11b","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/b766869f-224f-41a7-9c3e-61a68e88e11b'"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b766869f-224f-41a7-9c3e-61a68e88e11b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"ab174b75-ccaa-48a7-add8-c0d972cfe8a9","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":"ab174b75-ccaa-48a7-add8-c0d972cfe8a9","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":"ab174b75-ccaa-48a7-add8-c0d972cfe8a9","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":"060c454400edfd5fec88a46c66785881","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"060c454400edfd5fec88a46c66785881","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/b766869f-224f-41a7-9c3e-61a68e88e11b"},{"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/ab174b75-ccaa-48a7-add8-c0d972cfe8a9"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48"}}},"level":"info","message":"received a callback","requestID":"060c454400edfd5fec88a46c66785881"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"060c454400edfd5fec88a46c66785881","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:03 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"060c454400edfd5fec88a46c66785881"} device-1 | {"data":{"peerconnection":"cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ab174b75-ccaa-48a7-add8-c0d972cfe8a9","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":"b766869f-224f-41a7-9c3e-61a68e88e11b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"ab174b75-ccaa-48a7-add8-c0d972cfe8a9","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":"cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"b766869f-224f-41a7-9c3e-61a68e88e11b","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/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"78714ba8efd6b05e15f333615927692b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"78714ba8efd6b05e15f333615927692b","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/b766869f-224f-41a7-9c3e-61a68e88e11b"},{"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/ab174b75-ccaa-48a7-add8-c0d972cfe8a9"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48"}}},"level":"info","message":"received a callback","requestID":"78714ba8efd6b05e15f333615927692b"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"6e7b7870-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1309,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcd5e8cdb-ebc2-4d8d-8908-ae11563b1d48","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0748957f-3484-4031-a3a9-6f5e489d2953","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.0611262} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1309,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.263226,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6e7b7870-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48","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":"6e7b7870-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"6e7b7870-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48 200 10ms","method":"GET","requestID":"6e7b7870-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 43ms","method":"POST","requestID":"78714ba8efd6b05e15f333615927692b","responseTime":43,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.046","http_referrer":"","http_user_agent":"node-fetch","requestID":"78714ba8efd6b05e15f333615927692b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6e80f6b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1310,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a4f2d84-f9bd-4be9-bf6e-85664d0000e0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.0976894} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1310,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.735049,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6e80f6b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","object_type":"device","rebac_allow":false,"scope_allow":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":"6e80f6b0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6e80f6b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b766869f-224f-41a7-9c3e-61a68e88e11b/signaling 200 13ms","method":"POST","requestID":"6e80f6b0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6e8340a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1311,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8aa27b5b-5dc4-4e24-b92f-f5478ae87685","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.1131241} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1311,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.992143,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6e8340a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","object_type":"device","rebac_allow":false,"scope_allow":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":"6e8340a0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6e8340a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9/signaling 200 13ms","method":"POST","requestID":"6e8340a0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk","level":"info","message":"auth send jwt","requestID":"d76ccb23cce82126fe4c119c4bd00b79"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d76ccb23cce82126fe4c119c4bd00b79","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6","requestID":"d76ccb23cce82126fe4c119c4bd00b79"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1312,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1312,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.29558,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d76ccb23cce82126fe4c119c4bd00b79","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d76ccb23cce82126fe4c119c4bd00b79","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6","requestID":"d76ccb23cce82126fe4c119c4bd00b79"} gateway-1 | {"time_local":"07/Oct/2024:09:35:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6 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":"d76ccb23cce82126fe4c119c4bd00b79"} experiment-1 | {"level":"info","message":"GET /experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6 200 14ms","method":"GET","requestID":"d76ccb23cce82126fe4c119c4bd00b79","responseTime":14,"status":200,"url":"/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk","level":"info","message":"auth send jwt","requestID":"72a4279998d3ae9ce4de235420cd643f"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"72a4279998d3ae9ce4de235420cd643f","responseTime":6,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6","requestID":"72a4279998d3ae9ce4de235420cd643f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1313,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1313,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.198203,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"72a4279998d3ae9ce4de235420cd643f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"72a4279998d3ae9ce4de235420cd643f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Attempting to finish experiment","requestID":"72a4279998d3ae9ce4de235420cd643f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"6e8f2780-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1314,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1314,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.41692,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6e8f2780-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6e8f2780-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48","device":"b766869f-224f-41a7-9c3e-61a68e88e11b","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"device":"ab174b75-ccaa-48a7-add8-c0d972cfe8a9","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":"ab174b75-ccaa-48a7-add8-c0d972cfe8a9","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":"ab174b75-ccaa-48a7-add8-c0d972cfe8a9","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/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcd5e8cdb-ebc2-4d8d-8908-ae11563b1d48': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fcd5e8cdb-ebc2-4d8d-8908-ae11563b1d48","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"ee13540b-93cc-4967-814e-00ce18ac3075","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.2062175} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cbc9cc50-d476-4f43-acf6-cf2366014935","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.2069442} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"6e8f2780-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c8eb2543aae60188709434e40789ed19","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"c8eb2543aae60188709434e40789ed19","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e4cceb78c2fb62899897ada0bc7073b4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"connected","url":"http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b"},{"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/ab174b75-ccaa-48a7-add8-c0d972cfe8a9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48"}}},"level":"info","message":"received a callback","requestID":"c8eb2543aae60188709434e40789ed19"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e4cceb78c2fb62899897ada0bc7073b4","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":"connected","url":"http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b"},{"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/ab174b75-ccaa-48a7-add8-c0d972cfe8a9"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48"}}},"level":"info","message":"received a callback","requestID":"e4cceb78c2fb62899897ada0bc7073b4"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"6e8f2780-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48 204 43ms","method":"DELETE","requestID":"6e8f2780-848f-11ef-9233-95baf63f17e0","responseTime":43,"status":204,"url":"/peerconnections/cd5e8cdb-ebc2-4d8d-8908-ae11563b1d48"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"},"level":"info","message":"Successfully finished experiment","requestID":"72a4279998d3ae9ce4de235420cd643f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6e991290-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1315,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb766869f-224f-41a7-9c3e-61a68e88e11b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2e1f8152-2bd5-4ae2-955b-c05be3e4cd1e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.2551825} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1315,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.627965,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6e991290-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b766869f-224f-41a7-9c3e-61a68e88e11b","object_type":"device","rebac_allow":false,"scope_allow":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":"6e991290-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6e991290-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b766869f-224f-41a7-9c3e-61a68e88e11b/signaling 200 12ms","method":"POST","requestID":"6e991290-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/b766869f-224f-41a7-9c3e-61a68e88e11b/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c25ffaf-5819-43d0-a2c0-0a64deb124b6': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F5c25ffaf-5819-43d0-a2c0-0a64deb124b6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"ee13232f-7368-4c70-99fe-c2e6a5b7de22","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.2633648} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ba9e7afe-f581-49ee-91bf-5b64bcc58273","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.2636068} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6e9b3570-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"72a4279998d3ae9ce4de235420cd643f","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1316,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fab174b75-ccaa-48a7-add8-c0d972cfe8a9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12c72c76-355d-4ec2-bfd0-4f9d36ab3cd2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.2674978} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1316,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.108811,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6e9b3570-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9","object_type":"device","rebac_allow":false,"scope_allow":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":"6e9b3570-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6e9b3570-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9/signaling 200 8ms","method":"POST","requestID":"6e9b3570-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/ab174b75-ccaa-48a7-add8-c0d972cfe8a9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6","requestID":"72a4279998d3ae9ce4de235420cd643f"} gateway-1 | {"time_local":"07/Oct/2024:09:35:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.156","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"72a4279998d3ae9ce4de235420cd643f"} experiment-1 | {"level":"info","message":"DELETE /experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6 204 150ms","method":"DELETE","requestID":"72a4279998d3ae9ce4de235420cd643f","responseTime":150,"status":204,"url":"/experiments/5c25ffaf-5819-43d0-a2c0-0a64deb124b6"} gateway-1 | {"time_local":"07/Oct/2024:09:35:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3232","request_time":"4.254","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f21a3169f0d1b459b97456ef8591fe92"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"c8eb2543aae60188709434e40789ed19","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"c8eb2543aae60188709434e40789ed19"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk","level":"info","message":"auth send jwt","requestID":"ecc81a40b68dd9e46bfd8c6744f9a541"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"e4cceb78c2fb62899897ada0bc7073b4","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"e4cceb78c2fb62899897ada0bc7073b4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ecc81a40b68dd9e46bfd8c6744f9a541","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ecc81a40b68dd9e46bfd8c6744f9a541"} gateway-1 | {"time_local":"07/Oct/2024:09:35:04 +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.731","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f9e4906b70c7cb65edfd605ed7227233"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1317,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1317,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.962911,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ecc81a40b68dd9e46bfd8c6744f9a541","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ecc81a40b68dd9e46bfd8c6744f9a541","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/ab174b75-ccaa-48a7-add8-c0d972cfe8a9' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"91686c04-e0fc-426e-8db9-e5cf62ba4523","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.3497686} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ecc81a40b68dd9e46bfd8c6744f9a541","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5f68a306-9fd0-4435-8ec3-c46c29d2f2af","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.3543408} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ecc81a40b68dd9e46bfd8c6744f9a541","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/b766869f-224f-41a7-9c3e-61a68e88e11b' closed"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"d0490180-6539-484b-b5fd-5a76f3293b01","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.3654478} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d2b6976-f841-4624-9d60-560018fe55a7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.3657424} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"ecc81a40b68dd9e46bfd8c6744f9a541","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.365416895Z"}]},"request_id":"7b17f85e-56a4-49cb-b6c5-b37ab2ad44f7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.3694777} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ecc81a40b68dd9e46bfd8c6744f9a541","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ecc81a40b68dd9e46bfd8c6744f9a541"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"ecc81a40b68dd9e46bfd8c6744f9a541"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"ecc81a40b68dd9e46bfd8c6744f9a541","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk","level":"info","message":"auth send jwt","requestID":"353dc3e7e49b189e5202726397a428b8"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"353dc3e7e49b189e5202726397a428b8","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"353dc3e7e49b189e5202726397a428b8"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1318,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1318,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.819088,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"353dc3e7e49b189e5202726397a428b8","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"353dc3e7e49b189e5202726397a428b8","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"c6849662-a8a2-4abb-a17e-9e1b37d217b1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.3974354} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"353dc3e7e49b189e5202726397a428b8","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e0a6d0a7-6750-4176-933e-ac3fea4b516f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.4020162} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"353dc3e7e49b189e5202726397a428b8","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"13853586-c8e5-4cf8-8a2a-51f2b0ee5bff","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.413068} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1af6248-0cc5-4c9b-a72c-c91867a99b6d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.413256} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"353dc3e7e49b189e5202726397a428b8","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.413037858Z"}]},"request_id":"0da8d197-6f3a-49dc-b062-cedfbc5b5799","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.4171593} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"353dc3e7e49b189e5202726397a428b8","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"353dc3e7e49b189e5202726397a428b8"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"353dc3e7e49b189e5202726397a428b8"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"353dc3e7e49b189e5202726397a428b8","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk","level":"info","message":"auth send jwt","requestID":"33ba5908a64d413dc4d64f7faa9e6347"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"33ba5908a64d413dc4d64f7faa9e6347","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk","level":"info","message":"auth send jwt","requestID":"e6034ea567c39a990cd4d7503dfae575"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e6034ea567c39a990cd4d7503dfae575","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"33ba5908a64d413dc4d64f7faa9e6347"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e6034ea567c39a990cd4d7503dfae575"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1319,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1319,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.613354,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1320,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"33ba5908a64d413dc4d64f7faa9e6347","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"33ba5908a64d413dc4d64f7faa9e6347","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1320,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.582733,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e6034ea567c39a990cd4d7503dfae575","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e6034ea567c39a990cd4d7503dfae575","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.413037858Z"}]},"request_id":"054e7bea-8aee-4428-b8e6-f8ba82804854","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.8930109} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"33ba5908a64d413dc4d64f7faa9e6347","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.365416895Z"}]},"request_id":"92c9b8b2-0330-4baf-bd22-c333427c28b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.8937914} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e6034ea567c39a990cd4d7503dfae575","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d1025d36-3f4b-4abb-a311-0ae47bbcf451","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.8971894} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"33ba5908a64d413dc4d64f7faa9e6347","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"22090b44-fda1-47e1-a439-1fa5ae27f22b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.8987796} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"e6034ea567c39a990cd4d7503dfae575","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.365416895Z"}]},"request_id":"dca4153a-3b6e-41b1-9a1f-d64b424798db","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.9023757} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e6034ea567c39a990cd4d7503dfae575","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e6034ea567c39a990cd4d7503dfae575"} gateway-1 | {"time_local":"07/Oct/2024:09:35:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.030","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"e6034ea567c39a990cd4d7503dfae575"} device-1 | {"level":"info","message":"PATCH /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29 200 20ms","method":"PATCH","requestID":"e6034ea567c39a990cd4d7503dfae575","responseTime":20,"status":200,"url":"/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk","level":"info","message":"auth send jwt","requestID":"ea04475c498f4fb8f9de205d55126f78"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ea04475c498f4fb8f9de205d55126f78","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ea04475c498f4fb8f9de205d55126f78"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1321,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1321,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.683341,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ea04475c498f4fb8f9de205d55126f78","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ea04475c498f4fb8f9de205d55126f78","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.413037858Z"}]},"request_id":"97f0373e-ba9e-4fdd-8be2-a9aaa9a1b44e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.9129443} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"33ba5908a64d413dc4d64f7faa9e6347","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"33ba5908a64d413dc4d64f7faa9e6347"} gateway-1 | {"time_local":"07/Oct/2024:09:35:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"33ba5908a64d413dc4d64f7faa9e6347"} device-1 | {"level":"info","message":"PATCH /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f 200 33ms","method":"PATCH","requestID":"33ba5908a64d413dc4d64f7faa9e6347","responseTime":33,"status":200,"url":"/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk","level":"info","message":"auth send jwt","requestID":"eaf12a401635495555b77327d20abecd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"eaf12a401635495555b77327d20abecd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"eaf12a401635495555b77327d20abecd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1322,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1322,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.67786,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"eaf12a401635495555b77327d20abecd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"eaf12a401635495555b77327d20abecd","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ea04475c498f4fb8f9de205d55126f78"} device-1 | {"level":"info","message":"POST /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29/websocket 200 19ms","method":"POST","requestID":"ea04475c498f4fb8f9de205d55126f78","responseTime":19,"status":200,"url":"/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29/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.9","requestID":"ea04475c498f4fb8f9de205d55126f78"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"eaf12a401635495555b77327d20abecd"} gateway-1 | {"time_local":"07/Oct/2024:09:35:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f/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.9","requestID":"eaf12a401635495555b77327d20abecd"} device-1 | {"level":"info","message":"POST /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f/websocket 200 15ms","method":"POST","requestID":"eaf12a401635495555b77327d20abecd","responseTime":15,"status":200,"url":"/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk","level":"info","message":"auth send jwt","requestID":"356c6452bbc8893d26cc8db9c973b781"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"356c6452bbc8893d26cc8db9c973b781","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"356c6452bbc8893d26cc8db9c973b781"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1323,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1323,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.106159,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"356c6452bbc8893d26cc8db9c973b781","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"356c6452bbc8893d26cc8db9c973b781","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.365416895Z"}]},"request_id":"da2005a1-152c-4ea1-8907-16d70cb449be","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.9629135} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"356c6452bbc8893d26cc8db9c973b781","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"356c6452bbc8893d26cc8db9c973b781"} gateway-1 | {"time_local":"07/Oct/2024:09:35:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29? 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":"356c6452bbc8893d26cc8db9c973b781"} device-1 | {"level":"info","message":"GET /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29? 200 12ms","method":"GET","requestID":"356c6452bbc8893d26cc8db9c973b781","responseTime":12,"status":200,"url":"/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk","level":"info","message":"auth send jwt","requestID":"e6240b835fe6ee457a8fe79e11dcf1e9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"e6240b835fe6ee457a8fe79e11dcf1e9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e6240b835fe6ee457a8fe79e11dcf1e9"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1324,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1324,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.649888,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e6240b835fe6ee457a8fe79e11dcf1e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e6240b835fe6ee457a8fe79e11dcf1e9","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.413037858Z"}]},"request_id":"72a6fd2f-7a6e-4e81-858f-ccd255ebbf55","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293704.9796054} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e6240b835fe6ee457a8fe79e11dcf1e9","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e6240b835fe6ee457a8fe79e11dcf1e9"} device-1 | {"level":"info","message":"GET /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f? 200 11ms","method":"GET","requestID":"e6240b835fe6ee457a8fe79e11dcf1e9","responseTime":11,"status":200,"url":"/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:04 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f? 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":"e6240b835fe6ee457a8fe79e11dcf1e9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk","level":"info","message":"auth send jwt","requestID":"03eec43cc46c85468e2ec7055f5604ae"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"03eec43cc46c85468e2ec7055f5604ae","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"03eec43cc46c85468e2ec7055f5604ae"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1325,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1325,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.844183,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:04Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"03eec43cc46c85468e2ec7055f5604ae","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"03eec43cc46c85468e2ec7055f5604ae","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Attempting to run experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Attempting to book experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Successfully booked experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f0fc930-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f0ff040-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1326,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1326,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.089084,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1327,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f0fc930-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f0fc930-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1327,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.524197,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f0ff040-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f0ff040-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.365416895Z"}]},"request_id":"4f26425a-82d6-43b0-bc29-4471676801b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.0356758} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6f0fc930-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.413037858Z"}]},"request_id":"59f1bc64-efb1-48ae-be8a-4b94adca898a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.0369375} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6f0ff040-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f0fc930-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29? 200 14ms","method":"GET","requestID":"6f0fc930-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f0ff040-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f? 200 14ms","method":"GET","requestID":"6f0ff040-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Setting up experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Successfully locked booking for experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Attempting to update booking for experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Successfully updated booking for experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Successfully set up experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f18f0f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f193f10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f196620-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Successfully running experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1328,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1328,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.865415,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1329,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f18f0f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f18f0f0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1329,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.617288,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"client_addr":"127.0.0.1:43650","level":"info","msg":"Received request.","req_id":1330,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f193f10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6f193f10-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb34b33e-bdd8-4a0f-8a52-03e44197dfba","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.0948448} authorization-1 | {"client_addr":"127.0.0.1:43650","level":"info","msg":"Sent response.","req_id":1330,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.666912,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f196620-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","object_type":"device","rebac_allow":false,"scope_allow":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":"6f196620-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.365416895Z"}]},"request_id":"22967d95-33e2-467e-b6ae-64e8d471bd21","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.0969172} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"6f18f0f0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.413037858Z"}]},"request_id":"3cddd6ed-a3ae-4488-a2da-5eb5a8568bac","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.098776} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6f193f10-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f196620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29/signaling 200 10ms","method":"POST","requestID":"6f196620-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f1bd720-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f18f0f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29? 200 21ms","method":"GET","requestID":"6f18f0f0-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f193f10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f? 200 20ms","method":"GET","requestID":"6f193f10-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1331,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e8c07737-d97f-4e29-bfa1-c27e0a3c1a96","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.1113613} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F45119da9-6a2f-4584-a7ce-d9f7a7ad61e7#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F45119da9-6a2f-4584-a7ce-d9f7a7ad61e7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"9ed13f18-9a5a-4ad0-8e61-738bf17449f6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.1118476} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f1c9a70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1331,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.006094,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f1bd720-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","object_type":"device","rebac_allow":false,"scope_allow":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":"6f1bd720-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dbcbc4a9-6c43-42e7-8187-78b9316c534b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.1122224} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"03eec43cc46c85468e2ec7055f5604ae","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f1bd720-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1332,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} device-1 | {"level":"info","message":"POST /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f/signaling 200 11ms","method":"POST","requestID":"6f1bd720-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc178cc1-e6dd-4548-876c-7cea7384013a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.1199906} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1332,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.678201,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f1c9a70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","object_type":"device","rebac_allow":false,"scope_allow":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":"6f1c9a70-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"03eec43cc46c85468e2ec7055f5604ae"} experiment-1 | {"level":"info","message":"POST /experiments? 201 135ms","method":"POST","requestID":"03eec43cc46c85468e2ec7055f5604ae","responseTime":135,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.139","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"03eec43cc46c85468e2ec7055f5604ae"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f1c9a70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29/signaling 200 13ms","method":"POST","requestID":"6f1c9a70-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f1ee460-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNX0.lQS1lD7TBmVAFZ5xqDbN_zqA8zlwAa6evycIiifUviE","level":"info","message":"auth send jwt","requestID":"cdcd6fdbdfda23b3f2130ce5c032c97a"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"cdcd6fdbdfda23b3f2130ce5c032c97a","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"cdcd6fdbdfda23b3f2130ce5c032c97a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1333,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1334,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"12646f9b-ed25-4aca-832a-740f4ac57a7c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.1307933} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1334,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.686755,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"cdcd6fdbdfda23b3f2130ce5c032c97a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293705,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNX0.lQS1lD7TBmVAFZ5xqDbN_zqA8zlwAa6evycIiifUviE"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"cdcd6fdbdfda23b3f2130ce5c032c97a","responseTime":2,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1333,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.068571,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f1ee460-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6f1ee460-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.365416895Z"}]},"request_id":"537b7510-4434-4b3b-ae33-73bc0833a610","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.1345272} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f1ee460-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f/signaling 200 9ms","method":"POST","requestID":"6f1ee460-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cdcd6fdbdfda23b3f2130ce5c032c97a","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f20b920-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6f20e030-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"cdcd6fdbdfda23b3f2130ce5c032c97a"} gateway-1 | {"time_local":"07/Oct/2024:09:35:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29? 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":"cdcd6fdbdfda23b3f2130ce5c032c97a"} device-1 | {"level":"info","message":"GET /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29? 200 12ms","method":"GET","requestID":"cdcd6fdbdfda23b3f2130ce5c032c97a","responseTime":12,"status":200,"url":"/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1335,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1335,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.929846,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1336,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f20b920-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6f20b920-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1336,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.605585,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f20e030-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6f20e030-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNX0.lQS1lD7TBmVAFZ5xqDbN_zqA8zlwAa6evycIiifUviE","level":"info","message":"auth send jwt","requestID":"bbb84c52ec93d44e7b4a2ab65d3cb52b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bbb84c52ec93d44e7b4a2ab65d3cb52b","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.365416895Z"}]},"request_id":"a847c017-90aa-426e-ba49-7dbf691651d9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.1454098} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"bbb84c52ec93d44e7b4a2ab65d3cb52b"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6f20b920-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.413037858Z"}]},"request_id":"be60b0ad-2a3c-4f43-a48f-71a2c82c03f8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.146435} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6f20e030-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1337,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1337,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.646805,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"bbb84c52ec93d44e7b4a2ab65d3cb52b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293705,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNX0.lQS1lD7TBmVAFZ5xqDbN_zqA8zlwAa6evycIiifUviE"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bbb84c52ec93d44e7b4a2ab65d3cb52b","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f20b920-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29? 200 12ms","method":"GET","requestID":"6f20b920-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6f20e030-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f? 200 12ms","method":"GET","requestID":"6f20e030-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Building connection plan","requestID":"03eec43cc46c85468e2ec7055f5604ae"} 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":"5ea84298-ada3-41d3-a69d-75df8f6ac803"},{"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":"48ba861a-70ac-4a01-9cd9-0d4fb4e07067"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"d45402c2-7f1e-4480-9063-1bce13c6b4ea"}]},"level":"info","message":"Built pairwise service configurations","requestID":"03eec43cc46c85468e2ec7055f5604ae"} 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/4956b780-6e3e-4dce-8bb7-38bcf56bb26f"},{"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/46b295d3-22e8-4d96-9494-c92b9ea97d29"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"03eec43cc46c85468e2ec7055f5604ae"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"6f232a20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:04.413037858Z"}]},"request_id":"73a85990-7848-4601-85d9-592454c183d7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.1546164} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"bbb84c52ec93d44e7b4a2ab65d3cb52b","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1338,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"bbb84c52ec93d44e7b4a2ab65d3cb52b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1338,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.836899,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} gateway-1 | {"time_local":"07/Oct/2024:09:35:05 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f? 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":"bbb84c52ec93d44e7b4a2ab65d3cb52b"} device-1 | {"level":"info","message":"GET /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f? 200 11ms","method":"GET","requestID":"bbb84c52ec93d44e7b4a2ab65d3cb52b","responseTime":11,"status":200,"url":"/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f232a20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293704,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwNH0.JWT4RiWB_xSXCBJeqE5KgAXIakwQQUXys20c-5C9IIk"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6f232a20-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"a2c2dd8c-201a-4ce2-8b32-a6130d3aa181","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.1644638} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bc6f20a2-c089-44bf-b654-57b2f3bd732f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.1645615} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"6f232a20-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"6f232a20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"6f232a20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2'","requestID":"6f232a20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2'","requestID":"6f232a20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"6f232a20-848f-11ef-9233-95baf63f17e0"} 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":"6f232a20-848f-11ef-9233-95baf63f17e0","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":"6f232a20-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"03eec43cc46c85468e2ec7055f5604ae"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f2b1960-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1339,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"baab89c8-63fe-4599-861d-a2b9e4e5b698","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.2100437} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1339,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.358089,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f2b1960-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","object_type":"device","rebac_allow":false,"scope_allow":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":"6f2b1960-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f2b1960-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29/signaling 200 7ms","method":"POST","requestID":"6f2b1960-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"6f2c78f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1340,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"18ced1b1-ad58-4aab-b28e-2d6052bc292c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293705.2189136} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1340,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.160472,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:05Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6f2c78f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","object_type":"device","rebac_allow":false,"scope_allow":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":"6f2c78f0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"6f2c78f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f/signaling 200 7ms","method":"POST","requestID":"6f2c78f0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f/signaling"} device-1 | {"device":"46b295d3-22e8-4d96-9494-c92b9ea97d29","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":"4816f663-55ea-482a-a37b-cc3dc2cb50d2","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4956b780-6e3e-4dce-8bb7-38bcf56bb26f","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":"4816f663-55ea-482a-a37b-cc3dc2cb50d2","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4956b780-6e3e-4dce-8bb7-38bcf56bb26f","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":"4956b780-6e3e-4dce-8bb7-38bcf56bb26f","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":"4956b780-6e3e-4dce-8bb7-38bcf56bb26f","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":"4956b780-6e3e-4dce-8bb7-38bcf56bb26f","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/4816f663-55ea-482a-a37b-cc3dc2cb50d2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4816f663-55ea-482a-a37b-cc3dc2cb50d2","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d4b18b774a74e6baec32044fc70a460f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"d4b18b774a74e6baec32044fc70a460f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f"},{"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/46b295d3-22e8-4d96-9494-c92b9ea97d29"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2"}}},"level":"info","message":"received a callback","requestID":"d4b18b774a74e6baec32044fc70a460f"} device-1 | {"device":"46b295d3-22e8-4d96-9494-c92b9ea97d29","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":"46b295d3-22e8-4d96-9494-c92b9ea97d29","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":"46b295d3-22e8-4d96-9494-c92b9ea97d29","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 8ms","method":"POST","requestID":"d4b18b774a74e6baec32044fc70a460f","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"d4b18b774a74e6baec32044fc70a460f"} device-1 | {"data":{"peerconnection":"4816f663-55ea-482a-a37b-cc3dc2cb50d2","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4956b780-6e3e-4dce-8bb7-38bcf56bb26f","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":"46b295d3-22e8-4d96-9494-c92b9ea97d29","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":"4956b780-6e3e-4dce-8bb7-38bcf56bb26f","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":"46b295d3-22e8-4d96-9494-c92b9ea97d29","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":"4816f663-55ea-482a-a37b-cc3dc2cb50d2","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/4816f663-55ea-482a-a37b-cc3dc2cb50d2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4816f663-55ea-482a-a37b-cc3dc2cb50d2","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"be5e5aae4c7cc0cc07a7dd1024530235","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"be5e5aae4c7cc0cc07a7dd1024530235","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/4956b780-6e3e-4dce-8bb7-38bcf56bb26f"},{"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/46b295d3-22e8-4d96-9494-c92b9ea97d29"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2"}}},"level":"info","message":"received a callback","requestID":"be5e5aae4c7cc0cc07a7dd1024530235"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"7069daf0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1341,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4816f663-55ea-482a-a37b-cc3dc2cb50d2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9317d21a-aa85-47cd-a33a-128bc57ad28d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.301936} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1341,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":4.296021,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7069daf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2","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":"7069daf0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"7069daf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2 200 14ms","method":"GET","requestID":"7069daf0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 50ms","method":"POST","requestID":"be5e5aae4c7cc0cc07a7dd1024530235","responseTime":50,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.055","http_referrer":"","http_user_agent":"node-fetch","requestID":"be5e5aae4c7cc0cc07a7dd1024530235"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70706aa0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1342,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f13006e8-191d-4e79-9369-f7a14f4b965c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.346469} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1342,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.239389,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"70706aa0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","object_type":"device","rebac_allow":false,"scope_allow":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":"70706aa0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70706aa0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f/signaling 200 15ms","method":"POST","requestID":"70706aa0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"707329c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1343,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2f4a9627-243d-459f-b01a-d5c2971af330","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.3622622} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1343,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.678554,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"707329c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","object_type":"device","rebac_allow":false,"scope_allow":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":"707329c0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"707329c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29/signaling 200 12ms","method":"POST","requestID":"707329c0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwN30.2aRJo0T3qaUqrzima0qzjS8OsDbFV156xKP23AI4HY4","level":"info","message":"auth send jwt","requestID":"f3a8439b2b13fbdce438d2bb20d285e9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f3a8439b2b13fbdce438d2bb20d285e9","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7","requestID":"f3a8439b2b13fbdce438d2bb20d285e9"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1344,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1344,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.024041,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f3a8439b2b13fbdce438d2bb20d285e9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293707,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwN30.2aRJo0T3qaUqrzima0qzjS8OsDbFV156xKP23AI4HY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f3a8439b2b13fbdce438d2bb20d285e9","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7","requestID":"f3a8439b2b13fbdce438d2bb20d285e9"} experiment-1 | {"level":"info","message":"GET /experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7 200 14ms","method":"GET","requestID":"f3a8439b2b13fbdce438d2bb20d285e9","responseTime":14,"status":200,"url":"/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"} gateway-1 | {"time_local":"07/Oct/2024:09:35:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.020","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f3a8439b2b13fbdce438d2bb20d285e9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwN30.2aRJo0T3qaUqrzima0qzjS8OsDbFV156xKP23AI4HY4","level":"info","message":"auth send jwt","requestID":"326491fcae344baa6cebe68a9ccafdad"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"326491fcae344baa6cebe68a9ccafdad","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7","requestID":"326491fcae344baa6cebe68a9ccafdad"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1345,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1345,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.249138,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"326491fcae344baa6cebe68a9ccafdad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293707,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwN30.2aRJo0T3qaUqrzima0qzjS8OsDbFV156xKP23AI4HY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"326491fcae344baa6cebe68a9ccafdad","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Attempting to finish experiment","requestID":"326491fcae344baa6cebe68a9ccafdad"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"707db110-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1346,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1346,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.367017,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"707db110-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293707,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwN30.2aRJo0T3qaUqrzima0qzjS8OsDbFV156xKP23AI4HY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"707db110-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"device":"4956b780-6e3e-4dce-8bb7-38bcf56bb26f","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":"4956b780-6e3e-4dce-8bb7-38bcf56bb26f","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":"4956b780-6e3e-4dce-8bb7-38bcf56bb26f","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":"46b295d3-22e8-4d96-9494-c92b9ea97d29","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":"46b295d3-22e8-4d96-9494-c92b9ea97d29","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":"46b295d3-22e8-4d96-9494-c92b9ea97d29","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/4816f663-55ea-482a-a37b-cc3dc2cb50d2' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"4816f663-55ea-482a-a37b-cc3dc2cb50d2","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4816f663-55ea-482a-a37b-cc3dc2cb50d2': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F4816f663-55ea-482a-a37b-cc3dc2cb50d2","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"f9cbb731-b0ea-4d3c-aa7d-bbb6718672e0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.4492629} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6cd72f7baf7256b54cc648aef6e08f0e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b99d96d3-a212-447f-b9f2-d043e6e51832","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.4498625} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6cd72f7baf7256b54cc648aef6e08f0e","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"707db110-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e5696a309ecec975e714ab239f5e9bb1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/4956b780-6e3e-4dce-8bb7-38bcf56bb26f"},{"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/46b295d3-22e8-4d96-9494-c92b9ea97d29"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2"}}},"level":"info","message":"received a callback","requestID":"6cd72f7baf7256b54cc648aef6e08f0e"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e5696a309ecec975e714ab239f5e9bb1","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f"},{"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/46b295d3-22e8-4d96-9494-c92b9ea97d29"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2"}}},"level":"info","message":"received a callback","requestID":"e5696a309ecec975e714ab239f5e9bb1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"707db110-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2 204 48ms","method":"DELETE","requestID":"707db110-848f-11ef-9233-95baf63f17e0","responseTime":48,"status":204,"url":"/peerconnections/4816f663-55ea-482a-a37b-cc3dc2cb50d2"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"},"level":"info","message":"Successfully finished experiment","requestID":"326491fcae344baa6cebe68a9ccafdad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"70888680-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1347,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4956b780-6e3e-4dce-8bb7-38bcf56bb26f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e74d888f-86ac-4130-94f8-11cde1778689","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.5028381} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1347,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.87213,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"70888680-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f","object_type":"device","rebac_allow":false,"scope_allow":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":"70888680-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"70888680-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f/signaling 200 13ms","method":"POST","requestID":"70888680-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F45119da9-6a2f-4584-a7ce-d9f7a7ad61e7': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F45119da9-6a2f-4584-a7ce-d9f7a7ad61e7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"223d8fd6-3a79-434c-8904-b9a10749ae43","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.5101461} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6147ae7c-d09e-4b08-881e-8914d79fd0cb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.5105495} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"708af780-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"326491fcae344baa6cebe68a9ccafdad","responseTime":19,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1348,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F46b295d3-22e8-4d96-9494-c92b9ea97d29","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"930e3c0f-635c-4865-9636-731ff1a10d53","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.5193243} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1348,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.775774,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"708af780-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29","object_type":"device","rebac_allow":false,"scope_allow":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":"708af780-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"708af780-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/46b295d3-22e8-4d96-9494-c92b9ea97d29/signaling 200 13ms","method":"POST","requestID":"708af780-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/46b295d3-22e8-4d96-9494-c92b9ea97d29/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7","requestID":"326491fcae344baa6cebe68a9ccafdad"} gateway-1 | {"time_local":"07/Oct/2024:09:35:07 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7 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":"326491fcae344baa6cebe68a9ccafdad"} experiment-1 | {"level":"info","message":"DELETE /experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7 204 171ms","method":"DELETE","requestID":"326491fcae344baa6cebe68a9ccafdad","responseTime":171,"status":204,"url":"/experiments/45119da9-6a2f-4584-a7ce-d9f7a7ad61e7"} gateway-1 | {"time_local":"07/Oct/2024:09:35:07 +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.643","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"d3f992b6b76e4ebd37e72c26913d47ce"} gateway-1 | {"time_local":"07/Oct/2024:09:35:07 +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.652","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"aef545cac9cfcdfdea5f232f34ec0219"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 130ms","method":"POST","requestID":"6cd72f7baf7256b54cc648aef6e08f0e","responseTime":130,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.134","http_referrer":"","http_user_agent":"node-fetch","requestID":"6cd72f7baf7256b54cc648aef6e08f0e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"e5696a309ecec975e714ab239f5e9bb1","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"e5696a309ecec975e714ab239f5e9bb1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwN30.2aRJo0T3qaUqrzima0qzjS8OsDbFV156xKP23AI4HY4","level":"info","message":"auth send jwt","requestID":"853a52dc393977c71b1c62add0e81eec"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"853a52dc393977c71b1c62add0e81eec","responseTime":2,"status":200,"url":"/auth"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4956b780-6e3e-4dce-8bb7-38bcf56bb26f' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"853a52dc393977c71b1c62add0e81eec"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1349,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1349,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.971882,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"853a52dc393977c71b1c62add0e81eec","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293707,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwN30.2aRJo0T3qaUqrzima0qzjS8OsDbFV156xKP23AI4HY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"853a52dc393977c71b1c62add0e81eec","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/46b295d3-22e8-4d96-9494-c92b9ea97d29' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"da9523ed-e4de-4992-9d49-a8c91d8d53fb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.6083546} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"853a52dc393977c71b1c62add0e81eec","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1d400d2d-7577-4524-a431-8ac6e0e12ae8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.6139057} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"853a52dc393977c71b1c62add0e81eec","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"c7d6cec7-886c-47b5-87dd-96ff6f3d1b3d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.6232862} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ca8025b1-03bc-4946-a6ef-59ac40ddbe96","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.6235256} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"853a52dc393977c71b1c62add0e81eec","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.623251054Z"}]},"request_id":"0823e19a-6b66-4418-abc0-a7934b0e76e9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.627888} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"853a52dc393977c71b1c62add0e81eec","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"853a52dc393977c71b1c62add0e81eec"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"853a52dc393977c71b1c62add0e81eec"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"853a52dc393977c71b1c62add0e81eec","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwN30.2aRJo0T3qaUqrzima0qzjS8OsDbFV156xKP23AI4HY4","level":"info","message":"auth send jwt","requestID":"44b8d60ae6692dd07d46cd4e46839463"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"44b8d60ae6692dd07d46cd4e46839463","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"44b8d60ae6692dd07d46cd4e46839463"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1350,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1350,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.924937,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:07Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"44b8d60ae6692dd07d46cd4e46839463","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293707,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwN30.2aRJo0T3qaUqrzima0qzjS8OsDbFV156xKP23AI4HY4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"44b8d60ae6692dd07d46cd4e46839463","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"706161e2-f9fd-4ddc-812e-873fddc6c244","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.6520422} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"44b8d60ae6692dd07d46cd4e46839463","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2cd26c83-4e0a-442e-9602-5689c6d1acf4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.6563764} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"44b8d60ae6692dd07d46cd4e46839463","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"2fa01fac-9624-4ca5-b1ee-08509627dcb9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.673271} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6177fd34-3844-41b0-9d17-541f419d70a7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.6734843} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"44b8d60ae6692dd07d46cd4e46839463","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.673234651Z"}]},"request_id":"51710484-73bb-4066-b130-6c432b89c602","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293707.6778293} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"44b8d60ae6692dd07d46cd4e46839463","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"44b8d60ae6692dd07d46cd4e46839463"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"44b8d60ae6692dd07d46cd4e46839463"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"44b8d60ae6692dd07d46cd4e46839463","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0","level":"info","message":"auth send jwt","requestID":"6cc94e6dd650904e38cf458209f050ff"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"6cc94e6dd650904e38cf458209f050ff","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"6cc94e6dd650904e38cf458209f050ff"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0","level":"info","message":"auth send jwt","requestID":"62d8ab46caf6c6156089a9346cae39e2"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"62d8ab46caf6c6156089a9346cae39e2","responseTime":7,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"62d8ab46caf6c6156089a9346cae39e2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1351,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1351,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.788506,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1352,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6cc94e6dd650904e38cf458209f050ff","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6cc94e6dd650904e38cf458209f050ff","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1352,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.610312,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"62d8ab46caf6c6156089a9346cae39e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"62d8ab46caf6c6156089a9346cae39e2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.623251054Z"}]},"request_id":"e0decf0f-d1ca-4d19-bfbf-9a5b636d118c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.1611722} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6cc94e6dd650904e38cf458209f050ff","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.673234651Z"}]},"request_id":"7a6db97b-3bfe-4113-8b13-3d31fb917809","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.1618361} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"62d8ab46caf6c6156089a9346cae39e2","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e9c40811-1eb9-4240-b0bb-64f62e39b7ec","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.1664546} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"6cc94e6dd650904e38cf458209f050ff","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"222a8928-88eb-4126-bc7b-3268488f683f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.1680079} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"62d8ab46caf6c6156089a9346cae39e2","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.673234651Z"}]},"request_id":"2a711ab6-1dc5-4bc6-b226-e933c0e19d3f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.1716921} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"62d8ab46caf6c6156089a9346cae39e2","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"62d8ab46caf6c6156089a9346cae39e2"} gateway-1 | {"time_local":"07/Oct/2024:09:35:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2 HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.032","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"62d8ab46caf6c6156089a9346cae39e2"} device-1 | {"level":"info","message":"PATCH /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2 200 23ms","method":"PATCH","requestID":"62d8ab46caf6c6156089a9346cae39e2","responseTime":23,"status":200,"url":"/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0","level":"info","message":"auth send jwt","requestID":"4c8bb6106e164e06e83d831713f32779"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4c8bb6106e164e06e83d831713f32779","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"4c8bb6106e164e06e83d831713f32779"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1353,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1353,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.735061,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4c8bb6106e164e06e83d831713f32779","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4c8bb6106e164e06e83d831713f32779","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.623251054Z"}]},"request_id":"3b6b845b-3d07-4f9e-ac63-10e096e7fa82","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.1832323} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6cc94e6dd650904e38cf458209f050ff","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"6cc94e6dd650904e38cf458209f050ff"} gateway-1 | {"time_local":"07/Oct/2024:09:35:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf HTTP/1.1","status": "200","body_bytes_sent":"1331","request_time":"0.045","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"6cc94e6dd650904e38cf458209f050ff"} device-1 | {"level":"info","message":"PATCH /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf 200 37ms","method":"PATCH","requestID":"6cc94e6dd650904e38cf458209f050ff","responseTime":37,"status":200,"url":"/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0","level":"info","message":"auth send jwt","requestID":"71244af1bd65e5175d82b116cadcf1b9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"71244af1bd65e5175d82b116cadcf1b9","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"71244af1bd65e5175d82b116cadcf1b9"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1354,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1354,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.809037,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"71244af1bd65e5175d82b116cadcf1b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"71244af1bd65e5175d82b116cadcf1b9","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"4c8bb6106e164e06e83d831713f32779"} device-1 | {"level":"info","message":"POST /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2/websocket 200 18ms","method":"POST","requestID":"4c8bb6106e164e06e83d831713f32779","responseTime":18,"status":200,"url":"/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2/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.9","requestID":"4c8bb6106e164e06e83d831713f32779"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"71244af1bd65e5175d82b116cadcf1b9"} gateway-1 | {"time_local":"07/Oct/2024:09:35:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf/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.9","requestID":"71244af1bd65e5175d82b116cadcf1b9"} device-1 | {"level":"info","message":"POST /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf/websocket 200 13ms","method":"POST","requestID":"71244af1bd65e5175d82b116cadcf1b9","responseTime":13,"status":200,"url":"/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0","level":"info","message":"auth send jwt","requestID":"1eb61d9071596de4c8178c477c3c3f47"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1eb61d9071596de4c8178c477c3c3f47","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"1eb61d9071596de4c8178c477c3c3f47"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1355,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1355,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.044947,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1eb61d9071596de4c8178c477c3c3f47","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1eb61d9071596de4c8178c477c3c3f47","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.623251054Z"}]},"request_id":"b0945133-8082-469d-864c-b28cd8757696","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.2401679} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1eb61d9071596de4c8178c477c3c3f47","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"1eb61d9071596de4c8178c477c3c3f47"} device-1 | {"level":"info","message":"GET /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf? 200 13ms","method":"GET","requestID":"1eb61d9071596de4c8178c477c3c3f47","responseTime":13,"status":200,"url":"/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf? 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":"1eb61d9071596de4c8178c477c3c3f47"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0","level":"info","message":"auth send jwt","requestID":"b7da23650eb88a8cc328550508662ed6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"b7da23650eb88a8cc328550508662ed6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"b7da23650eb88a8cc328550508662ed6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1356,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1356,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.630116,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b7da23650eb88a8cc328550508662ed6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"b7da23650eb88a8cc328550508662ed6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.673234651Z"}]},"request_id":"04b974bf-f27b-488b-a6f1-a45d5f00a888","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.258272} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"b7da23650eb88a8cc328550508662ed6","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"b7da23650eb88a8cc328550508662ed6"} gateway-1 | {"time_local":"07/Oct/2024:09:35:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2? 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":"b7da23650eb88a8cc328550508662ed6"} device-1 | {"level":"info","message":"GET /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2? 200 12ms","method":"GET","requestID":"b7da23650eb88a8cc328550508662ed6","responseTime":12,"status":200,"url":"/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0","level":"info","message":"auth send jwt","requestID":"757f6679cb7930a2410a8716fa7fedfd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"757f6679cb7930a2410a8716fa7fedfd","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"757f6679cb7930a2410a8716fa7fedfd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1357,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1357,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.237827,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"757f6679cb7930a2410a8716fa7fedfd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"757f6679cb7930a2410a8716fa7fedfd","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Attempting to run experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Attempting to book experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Successfully booked experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71030db0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"710334c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1358,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1359,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1358,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.982446,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"71030db0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"71030db0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1359,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.193832,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"710334c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"710334c0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.623251054Z"}]},"request_id":"a9f84bcb-6918-4b19-a322-525247fdd0b1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.3075569} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"71030db0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.673234651Z"}]},"request_id":"4c1db399-d7a7-4b6d-a425-6080c52fa442","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.3080728} authorization-1 | {"level":"info","message":"POST /relations/query 200 1ms","method":"POST","requestID":"710334c0-848f-11ef-9233-95baf63f17e0","responseTime":1,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71030db0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf? 200 12ms","method":"GET","requestID":"71030db0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"710334c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2? 200 11ms","method":"GET","requestID":"710334c0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Setting up experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Successfully locked booking for experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Attempting to update booking for experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Successfully updated booking for experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Successfully set up experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"710a39a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"710a60b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"710a87c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1360,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1360,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.824962,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Successfully running experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"710a39a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"710a39a0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1361,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1361,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.73103,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"710a60b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"710a60b0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1362,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ca4f2117-fc0c-4cd8-a6af-dc0a879f5b7b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.3533828} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.673234651Z"}]},"request_id":"c7b163d9-2aaa-4828-b363-ae16503658d8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.3563817} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1362,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.991969,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"710a87c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","object_type":"device","rebac_allow":false,"scope_allow":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":"710a87c0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"710a60b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.623251054Z"}]},"request_id":"83bfb32f-2013-4eac-bda2-2a2e034f9c33","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.3574307} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"710a39a0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"710a60b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2? 200 15ms","method":"GET","requestID":"710a60b0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"710a87c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf/signaling 200 15ms","method":"POST","requestID":"710a87c0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"710a39a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf? 200 18ms","method":"GET","requestID":"710a39a0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"710d1fd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"710d46e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1363,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1364,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fcc10435-10ab-45cb-bd57-83de19ea5dfb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.3705819} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d8cdd3f1-67de-4054-acf5-8da0e72ba78c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.3713806} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1363,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.234928,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1364,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.507568,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"710d1fd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","object_type":"device","rebac_allow":false,"scope_allow":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":"710d1fd0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9a4b0af3-9af5-446b-8a3f-5bc9e46736a6#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9a4b0af3-9af5-446b-8a3f-5bc9e46736a6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"f9f4dfb4-30ff-4e09-ad61-4dc82bc9f589","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.3720562} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cffd15a9-d5fd-4cce-a69f-f562986e041e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.3723154} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"710d46e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","object_type":"device","rebac_allow":false,"scope_allow":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":"710d46e0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"757f6679cb7930a2410a8716fa7fedfd","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"710d1fd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2/signaling 200 11ms","method":"POST","requestID":"710d1fd0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"710d46e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf/signaling 200 11ms","method":"POST","requestID":"710d46e0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"710f90d0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"757f6679cb7930a2410a8716fa7fedfd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1365,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} experiment-1 | {"level":"info","message":"POST /experiments? 201 115ms","method":"POST","requestID":"757f6679cb7930a2410a8716fa7fedfd","responseTime":115,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.121","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"757f6679cb7930a2410a8716fa7fedfd"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0264fff9-94f0-4ea5-9376-eafd8017437a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.3865721} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1365,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.322967,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"710f90d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","object_type":"device","rebac_allow":false,"scope_allow":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":"710f90d0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0","level":"info","message":"auth send jwt","requestID":"3006e121046db81145b0c70462c9a2e7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"3006e121046db81145b0c70462c9a2e7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"3006e121046db81145b0c70462c9a2e7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"710f90d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2/signaling 200 11ms","method":"POST","requestID":"710f90d0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1366,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1366,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.410776,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71118ca0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3006e121046db81145b0c70462c9a2e7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"3006e121046db81145b0c70462c9a2e7","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7111b3b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1367,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Received request.","req_id":1368,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1367,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.814111,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:43638","level":"info","msg":"Sent response.","req_id":1368,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.724815,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"71118ca0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"71118ca0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7111b3b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7111b3b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.623251054Z"}]},"request_id":"19012566-5e2e-46be-862e-b30d0de028f9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.3989727} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"3006e121046db81145b0c70462c9a2e7","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.623251054Z"}]},"request_id":"c7194028-0c73-448b-b3b8-6687dde0ced5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.4025495} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"3006e121046db81145b0c70462c9a2e7"} device-1 | {"level":"info","message":"GET /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf? 200 13ms","method":"GET","requestID":"3006e121046db81145b0c70462c9a2e7","responseTime":13,"status":200,"url":"/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"71118ca0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.673234651Z"}]},"request_id":"7f2698f4-14ed-44e9-a315-096a0ec9cefc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.4034004} gateway-1 | {"time_local":"07/Oct/2024:09:35:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf? 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":"3006e121046db81145b0c70462c9a2e7"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71118ca0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7111b3b0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf? 200 12ms","method":"GET","requestID":"71118ca0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0","level":"info","message":"auth send jwt","requestID":"53b5c127d30c7cebe8d8bc8d8fa45dbd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"53b5c127d30c7cebe8d8bc8d8fa45dbd","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"53b5c127d30c7cebe8d8bc8d8fa45dbd"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7111b3b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2? 200 16ms","method":"GET","requestID":"7111b3b0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Building connection plan","requestID":"757f6679cb7930a2410a8716fa7fedfd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1369,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} 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":"e822bb27-9b05-4a68-b656-7f8ec2869e6c"},{"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":"d5760a84-f345-49c2-9fc0-2fd0ce39cb8f"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"908c8527-805e-4c24-ab6b-804ecc9b0bc8"}]},"level":"info","message":"Built pairwise service configurations","requestID":"757f6679cb7930a2410a8716fa7fedfd"} 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/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf"},{"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/15572d47-9730-4581-aa9b-d3074e3f1ff2"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"757f6679cb7930a2410a8716fa7fedfd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1369,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.800022,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"53b5c127d30c7cebe8d8bc8d8fa45dbd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"53b5c127d30c7cebe8d8bc8d8fa45dbd","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"711472d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1370,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1370,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.610455,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"711472d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293708,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcwOH0.35CHIcvXOtdXCcMTEseb7mMxpVf9_RmdWO8e5Wf8NZ0"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"711472d0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:07.673234651Z"}]},"request_id":"3a25bf22-9c81-4cc9-8bd7-2ed30588fead","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.4181576} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"53b5c127d30c7cebe8d8bc8d8fa45dbd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"53b5c127d30c7cebe8d8bc8d8fa45dbd"} gateway-1 | {"time_local":"07/Oct/2024:09:35:08 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2? 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":"53b5c127d30c7cebe8d8bc8d8fa45dbd"} device-1 | {"level":"info","message":"GET /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2? 200 14ms","method":"GET","requestID":"53b5c127d30c7cebe8d8bc8d8fa45dbd","responseTime":14,"status":200,"url":"/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"dd70bc9c-0615-493a-a7b9-a7ac3ab535bf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.4270618} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"81fd2d00-a1d3-4287-8e84-33e193a6bc61","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.427325} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"711472d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"711472d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"711472d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1'","requestID":"711472d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1'","requestID":"711472d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"711472d0-848f-11ef-9233-95baf63f17e0"} 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":"711472d0-848f-11ef-9233-95baf63f17e0","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":"711472d0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"757f6679cb7930a2410a8716fa7fedfd"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"711c8920-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1371,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"769629e8-b818-423c-829a-7c0c28a12c53","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.4700751} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1371,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.470956,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"711c8920-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","object_type":"device","rebac_allow":false,"scope_allow":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":"711c8920-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"711c8920-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf/signaling 200 7ms","method":"POST","requestID":"711c8920-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"711e0fc0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1372,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c8e052c1-aa01-4360-b0dc-76846c7ca2a9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293708.4811742} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1372,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.141162,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:08Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"711e0fc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","object_type":"device","rebac_allow":false,"scope_allow":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":"711e0fc0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"711e0fc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2/signaling 200 10ms","method":"POST","requestID":"711e0fc0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2/signaling"} device-1 | {"device":"15572d47-9730-4581-aa9b-d3074e3f1ff2","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":"6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","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":"6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","statusDeviceA":"new","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","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":"a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","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":"a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","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":"a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","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/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f265d116faf0b6aa1e8e36e085ca99b9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"f265d116faf0b6aa1e8e36e085ca99b9","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connecting","url":"http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf"},{"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/15572d47-9730-4581-aa9b-d3074e3f1ff2"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1"}}},"level":"info","message":"received a callback","requestID":"f265d116faf0b6aa1e8e36e085ca99b9"} device-1 | {"device":"15572d47-9730-4581-aa9b-d3074e3f1ff2","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":"15572d47-9730-4581-aa9b-d3074e3f1ff2","deviceName":"Python Device 2","labels":{"job":"remote_device"},"level":"info","message":"connectionstatechanged connecting checking stable","origin":{"funcName":"connectionstatechanged","lineno":48,"name":"crosslab.soa_client.connection_webrtc","pathname":"/builds/FakIA/fachgebiet-iks/goldi/goldi2/crosslab/clients/soa/python/src/crosslab/soa_client/connection_webrtc.py","processName":"MainProcess","threadName":"MainThread"}} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"f265d116faf0b6aa1e8e36e085ca99b9","responseTime":9,"status":200,"url":"/callbacks/experiment"} device-1 | {"device":"15572d47-9730-4581-aa9b-d3074e3f1ff2","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"}} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"f265d116faf0b6aa1e8e36e085ca99b9"} device-1 | {"data":{"peerconnection":"6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","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":"15572d47-9730-4581-aa9b-d3074e3f1ff2","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":"a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","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":"15572d47-9730-4581-aa9b-d3074e3f1ff2","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":"6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","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/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5a46c74bff53e83e851bf20a141f6d5f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"5a46c74bff53e83e851bf20a141f6d5f","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf"},{"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/15572d47-9730-4581-aa9b-d3074e3f1ff2"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1"}}},"level":"info","message":"received a callback","requestID":"5a46c74bff53e83e851bf20a141f6d5f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"725b4ab0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1373,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"41ee9b73-21bc-4c9e-866c-dfdf8559b934","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.5618007} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1373,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.753936,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"725b4ab0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","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":"725b4ab0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"725b4ab0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1 200 12ms","method":"GET","requestID":"725b4ab0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 51ms","method":"POST","requestID":"5a46c74bff53e83e851bf20a141f6d5f","responseTime":51,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.055","http_referrer":"","http_user_agent":"node-fetch","requestID":"5a46c74bff53e83e851bf20a141f6d5f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"72620170-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1374,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dd9e5c80-39ac-4db4-8da8-6b51cf1633ba","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.606011} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1374,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.10001,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"72620170-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","object_type":"device","rebac_allow":false,"scope_allow":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":"72620170-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"72620170-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf/signaling 200 14ms","method":"POST","requestID":"72620170-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"72647270-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1375,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f1d672d8-48a1-4d00-b2f5-ad35e7313892","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.624878} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1375,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.50301,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"72647270-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","object_type":"device","rebac_allow":false,"scope_allow":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":"72647270-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"72647270-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2/signaling 200 16ms","method":"POST","requestID":"72647270-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxMH0.KMaei92qK3Frr9gkY83H0_QQctcHW29z1JuMlzqlWL4","level":"info","message":"auth send jwt","requestID":"a1d4ea7b1d3a0847c13bc9b2d6a0138b"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a1d4ea7b1d3a0847c13bc9b2d6a0138b","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6","requestID":"a1d4ea7b1d3a0847c13bc9b2d6a0138b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1376,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1376,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.16489,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a1d4ea7b1d3a0847c13bc9b2d6a0138b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293710,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxMH0.KMaei92qK3Frr9gkY83H0_QQctcHW29z1JuMlzqlWL4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a1d4ea7b1d3a0847c13bc9b2d6a0138b","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6","requestID":"a1d4ea7b1d3a0847c13bc9b2d6a0138b"} experiment-1 | {"level":"info","message":"GET /experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6 200 14ms","method":"GET","requestID":"a1d4ea7b1d3a0847c13bc9b2d6a0138b","responseTime":14,"status":200,"url":"/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"} gateway-1 | {"time_local":"07/Oct/2024:09:35:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6 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":"a1d4ea7b1d3a0847c13bc9b2d6a0138b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxMH0.KMaei92qK3Frr9gkY83H0_QQctcHW29z1JuMlzqlWL4","level":"info","message":"auth send jwt","requestID":"3378f44b47444ca0c5f8a2f2ac695d7c"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"3378f44b47444ca0c5f8a2f2ac695d7c","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6","requestID":"3378f44b47444ca0c5f8a2f2ac695d7c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1377,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1377,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.375919,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"3378f44b47444ca0c5f8a2f2ac695d7c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293710,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxMH0.KMaei92qK3Frr9gkY83H0_QQctcHW29z1JuMlzqlWL4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"3378f44b47444ca0c5f8a2f2ac695d7c","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Attempting to finish experiment","requestID":"3378f44b47444ca0c5f8a2f2ac695d7c"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"726f47e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1378,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1378,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.252054,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"726f47e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293710,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxMH0.KMaei92qK3Frr9gkY83H0_QQctcHW29z1JuMlzqlWL4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"726f47e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"device":"15572d47-9730-4581-aa9b-d3074e3f1ff2","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":"15572d47-9730-4581-aa9b-d3074e3f1ff2","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":"15572d47-9730-4581-aa9b-d3074e3f1ff2","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":"a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","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":"a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","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":"a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","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/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6024d94d-8684-4a2d-ab00-0fe5ac6c94b1': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"75e888cb-ab85-4422-b481-958d599f2e02","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.7100768} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"f3a850ad5aa5583dadad5ab2f22c0e65","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f4229e63-6941-4fe2-82ff-a529db42b87d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.7106361} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f3a850ad5aa5583dadad5ab2f22c0e65","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"726f47e0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2a6233b6f45f0d6661952af6c75c927f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"connected","url":"http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf"},{"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/15572d47-9730-4581-aa9b-d3074e3f1ff2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1"}}},"level":"info","message":"received a callback","requestID":"f3a850ad5aa5583dadad5ab2f22c0e65"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2a6233b6f45f0d6661952af6c75c927f","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","H2","H3","H4","H5","H6","H7","H8"]},"direction":"inout","interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf"},{"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/15572d47-9730-4581-aa9b-d3074e3f1ff2"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1"}}},"level":"info","message":"received a callback","requestID":"2a6233b6f45f0d6661952af6c75c927f"} device-1 | {"data":{"peerconnection":"6024d94d-8684-4a2d-ab00-0fe5ac6c94b1","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"726f47e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1 204 48ms","method":"DELETE","requestID":"726f47e0-848f-11ef-9233-95baf63f17e0","responseTime":48,"status":204,"url":"/peerconnections/6024d94d-8684-4a2d-ab00-0fe5ac6c94b1"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"},"level":"info","message":"Successfully finished experiment","requestID":"3378f44b47444ca0c5f8a2f2ac695d7c"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"727a1d50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1379,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fa0ccc950-f4eb-4310-82f1-e42ea5bd64bf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5f7c2ee2-3a24-49d7-a6be-582b4e08aa11","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.7718508} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1379,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.32766,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"727a1d50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf","object_type":"device","rebac_allow":false,"scope_allow":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":"727a1d50-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"727a1d50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf/signaling 200 24ms","method":"POST","requestID":"727a1d50-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9a4b0af3-9af5-446b-8a3f-5bc9e46736a6': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9a4b0af3-9af5-446b-8a3f-5bc9e46736a6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"920e4869-69e5-4c9a-9d42-a91bfcb5bae8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.7813976} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"adb2bca3-0d10-4436-981d-559bb24caea8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.7837944} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"727e6310-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 33ms","method":"POST","requestID":"3378f44b47444ca0c5f8a2f2ac695d7c","responseTime":33,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1380,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F15572d47-9730-4581-aa9b-d3074e3f1ff2","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7c19d49e-dbd4-4e63-bcba-6cb365c7c0fd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.795432} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1380,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.707596,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"727e6310-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2","object_type":"device","rebac_allow":false,"scope_allow":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":"727e6310-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"727e6310-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/15572d47-9730-4581-aa9b-d3074e3f1ff2/signaling 200 22ms","method":"POST","requestID":"727e6310-848f-11ef-9233-95baf63f17e0","responseTime":22,"status":200,"url":"/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6","requestID":"3378f44b47444ca0c5f8a2f2ac695d7c"} gateway-1 | {"time_local":"07/Oct/2024:09:35:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.194","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"3378f44b47444ca0c5f8a2f2ac695d7c"} experiment-1 | {"level":"info","message":"DELETE /experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6 204 190ms","method":"DELETE","requestID":"3378f44b47444ca0c5f8a2f2ac695d7c","responseTime":190,"status":204,"url":"/experiments/9a4b0af3-9af5-446b-8a3f-5bc9e46736a6"} gateway-1 | {"time_local":"07/Oct/2024:09:35:10 +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.655","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"1d77f28a2fe40a1475f2a9e2ae30c2ad"} gateway-1 | {"time_local":"07/Oct/2024:09:35:10 +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.663","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"500a9b12d79611d370a055b7e06fa642"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 150ms","method":"POST","requestID":"f3a850ad5aa5583dadad5ab2f22c0e65","responseTime":150,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.155","http_referrer":"","http_user_agent":"node-fetch","requestID":"f3a850ad5aa5583dadad5ab2f22c0e65"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 149ms","method":"POST","requestID":"2a6233b6f45f0d6661952af6c75c927f","responseTime":149,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.155","http_referrer":"","http_user_agent":"node-fetch","requestID":"2a6233b6f45f0d6661952af6c75c927f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxMH0.KMaei92qK3Frr9gkY83H0_QQctcHW29z1JuMlzqlWL4","level":"info","message":"auth send jwt","requestID":"86cb1fb09fb6524987415ad4d2ce8268"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"86cb1fb09fb6524987415ad4d2ce8268","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"86cb1fb09fb6524987415ad4d2ce8268"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/15572d47-9730-4581-aa9b-d3074e3f1ff2' closed"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1381,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1381,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.067406,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"86cb1fb09fb6524987415ad4d2ce8268","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293710,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxMH0.KMaei92qK3Frr9gkY83H0_QQctcHW29z1JuMlzqlWL4"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"86cb1fb09fb6524987415ad4d2ce8268","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/a0ccc950-f4eb-4310-82f1-e42ea5bd64bf' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"eacf5c4a-16ef-47f8-bbd6-7537dbc5d031","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.8895688} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"86cb1fb09fb6524987415ad4d2ce8268","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8a5fbd96-d6fe-4418-9acf-a6496440d769","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.8957524} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"86cb1fb09fb6524987415ad4d2ce8268","responseTime":5,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"556882c3-bc08-4707-8d01-38f0e10757d6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.9067104} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"bbb75ec5-7744-4a1a-8303-f3fe12060a82","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.9069834} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"86cb1fb09fb6524987415ad4d2ce8268","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.906658241Z"}]},"request_id":"251f5ef2-a623-45a0-8ef4-698bb524c292","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.9120305} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"86cb1fb09fb6524987415ad4d2ce8268","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"86cb1fb09fb6524987415ad4d2ce8268"} gateway-1 | {"time_local":"07/Oct/2024:09:35:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"86cb1fb09fb6524987415ad4d2ce8268"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"86cb1fb09fb6524987415ad4d2ce8268","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxMH0.KMaei92qK3Frr9gkY83H0_QQctcHW29z1JuMlzqlWL4","level":"info","message":"auth send jwt","requestID":"5c5f1b256fdf142bc6ad0d157b26cc6b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5c5f1b256fdf142bc6ad0d157b26cc6b","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"5c5f1b256fdf142bc6ad0d157b26cc6b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1382,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1382,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.853957,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:10Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c5f1b256fdf142bc6ad0d157b26cc6b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293710,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxMH0.KMaei92qK3Frr9gkY83H0_QQctcHW29z1JuMlzqlWL4"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"5c5f1b256fdf142bc6ad0d157b26cc6b","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"eab249fb-2062-4990-b5bb-4e89771bc24e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.935947} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5c5f1b256fdf142bc6ad0d157b26cc6b","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"92ff247d-f5fb-43f9-a546-6bc249856a77","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.9404871} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"5c5f1b256fdf142bc6ad0d157b26cc6b","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"fb333ad8-17e7-43e2-832c-575c2623ec68","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.9563797} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e3087f61-4243-4ca8-b0da-b9e75ed51350","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.9566321} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"5c5f1b256fdf142bc6ad0d157b26cc6b","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.956328911Z"}]},"request_id":"456f80a9-cae1-4cae-9f14-30b49bf81a24","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293710.9606621} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"5c5f1b256fdf142bc6ad0d157b26cc6b","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5c5f1b256fdf142bc6ad0d157b26cc6b"} gateway-1 | {"time_local":"07/Oct/2024:09:35:10 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5c5f1b256fdf142bc6ad0d157b26cc6b"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"5c5f1b256fdf142bc6ad0d157b26cc6b","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7fd91f596a74aaf85c5ccfa80b07a1ff","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"7fd91f596a74aaf85c5ccfa80b07a1ff","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1a090665-af14-4521-b949-738fc421a844/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":"7fd91f596a74aaf85c5ccfa80b07a1ff"} device-1 | {"level":"info","message":"OPTIONS /devices/1a090665-af14-4521-b949-738fc421a844/websocket 200 1ms","method":"OPTIONS","requestID":"7fd91f596a74aaf85c5ccfa80b07a1ff","responseTime":1,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxMn0.cbEFUpcuitjPlUH4EyOq7ogerBQhTv4Rvx548XmAvDo","level":"info","message":"auth send jwt","requestID":"9ddcb6f11a5c98bfe3d4cc6dca6b1554"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"9ddcb6f11a5c98bfe3d4cc6dca6b1554","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"9ddcb6f11a5c98bfe3d4cc6dca6b1554"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2a2a940a88acdeef25ddfac1a73c971a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"2a2a940a88acdeef25ddfac1a73c971a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1383,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:12Z"} gateway-1 | {"time_local":"07/Oct/2024:09:35:12 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bf392f66-c558-4eeb-a005-49082cd1e943/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":"2a2a940a88acdeef25ddfac1a73c971a"} device-1 | {"level":"info","message":"OPTIONS /devices/bf392f66-c558-4eeb-a005-49082cd1e943/websocket 200 1ms","method":"OPTIONS","requestID":"2a2a940a88acdeef25ddfac1a73c971a","responseTime":1,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943/websocket"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1383,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.366905,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"9ddcb6f11a5c98bfe3d4cc6dca6b1554","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293712,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxMn0.cbEFUpcuitjPlUH4EyOq7ogerBQhTv4Rvx548XmAvDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"9ddcb6f11a5c98bfe3d4cc6dca6b1554","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxMn0.cbEFUpcuitjPlUH4EyOq7ogerBQhTv4Rvx548XmAvDo","level":"info","message":"auth send jwt","requestID":"ef5cb9f1d76e2dca578ea9fb21313542"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ef5cb9f1d76e2dca578ea9fb21313542","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"ef5cb9f1d76e2dca578ea9fb21313542"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1384,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:12Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1384,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.235157,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:12Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ef5cb9f1d76e2dca578ea9fb21313542","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293712,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxMn0.cbEFUpcuitjPlUH4EyOq7ogerBQhTv4Rvx548XmAvDo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ef5cb9f1d76e2dca578ea9fb21313542","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"9ddcb6f11a5c98bfe3d4cc6dca6b1554"} device-1 | {"level":"info","message":"POST /devices/1a090665-af14-4521-b949-738fc421a844/websocket 200 24ms","method":"POST","requestID":"9ddcb6f11a5c98bfe3d4cc6dca6b1554","responseTime":24,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/1a090665-af14-4521-b949-738fc421a844/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":"9ddcb6f11a5c98bfe3d4cc6dca6b1554"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"ef5cb9f1d76e2dca578ea9fb21313542"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/bf392f66-c558-4eeb-a005-49082cd1e943/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":"ef5cb9f1d76e2dca578ea9fb21313542"} device-1 | {"level":"info","message":"POST /devices/bf392f66-c558-4eeb-a005-49082cd1e943/websocket 200 23ms","method":"POST","requestID":"ef5cb9f1d76e2dca578ea9fb21313542","responseTime":23,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/1a090665-af14-4521-b949-738fc421a844' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"dd2a8e5e95be62d7294899f124005d8b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"dd2a8e5e95be62d7294899f124005d8b","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/1a090665-af14-4521-b949-738fc421a844? 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":"dd2a8e5e95be62d7294899f124005d8b"} device-1 | {"level":"info","message":"OPTIONS /devices/1a090665-af14-4521-b949-738fc421a844? 200 1ms","method":"OPTIONS","requestID":"dd2a8e5e95be62d7294899f124005d8b","responseTime":1,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU","level":"info","message":"auth send jwt","requestID":"95cc1ac3af6fd0699eca230333f3a8e1"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"95cc1ac3af6fd0699eca230333f3a8e1","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"934de0f6e19f8650fe7c5b272c8780a3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"95cc1ac3af6fd0699eca230333f3a8e1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"934de0f6e19f8650fe7c5b272c8780a3","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/bf392f66-c558-4eeb-a005-49082cd1e943? 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":"934de0f6e19f8650fe7c5b272c8780a3"} device-1 | {"level":"info","message":"OPTIONS /devices/bf392f66-c558-4eeb-a005-49082cd1e943? 200 1ms","method":"OPTIONS","requestID":"934de0f6e19f8650fe7c5b272c8780a3","responseTime":1,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1385,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1385,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.232999,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"95cc1ac3af6fd0699eca230333f3a8e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"95cc1ac3af6fd0699eca230333f3a8e1","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU","level":"info","message":"auth send jwt","requestID":"e3a6933ecc2a63c61df0aa5d875c57c7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e3a6933ecc2a63c61df0aa5d875c57c7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e3a6933ecc2a63c61df0aa5d875c57c7"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.906658241Z"}]},"request_id":"3d0cf88c-b89e-4154-b63e-3718a2e27e54","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.064792} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"95cc1ac3af6fd0699eca230333f3a8e1","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1386,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1386,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.895765,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e3a6933ecc2a63c61df0aa5d875c57c7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e3a6933ecc2a63c61df0aa5d875c57c7","responseTime":4,"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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3b09cd60-ddf1-4a92-9c40-d8b094094202","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.072749} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"95cc1ac3af6fd0699eca230333f3a8e1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.956328911Z"}]},"request_id":"0cba965c-1957-445b-9721-070a8d038e69","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.0775409} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e3a6933ecc2a63c61df0aa5d875c57c7","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7d24444d-56be-4499-8560-86d629df363c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.084217} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"e3a6933ecc2a63c61df0aa5d875c57c7","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.906658241Z"}]},"request_id":"a3c4cca3-fa1c-443c-acc5-63eeac92b652","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.0936346} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"95cc1ac3af6fd0699eca230333f3a8e1","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"95cc1ac3af6fd0699eca230333f3a8e1"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/1a090665-af14-4521-b949-738fc421a844? 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":"95cc1ac3af6fd0699eca230333f3a8e1"} device-1 | {"level":"info","message":"PATCH /devices/1a090665-af14-4521-b949-738fc421a844? 200 46ms","method":"PATCH","requestID":"95cc1ac3af6fd0699eca230333f3a8e1","responseTime":46,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.956328911Z"}]},"request_id":"65e825fc-84df-4cd3-b9f3-ef7872325d99","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.1061106} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e3a6933ecc2a63c61df0aa5d875c57c7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e3a6933ecc2a63c61df0aa5d875c57c7"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/bf392f66-c558-4eeb-a005-49082cd1e943? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.053","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e3a6933ecc2a63c61df0aa5d875c57c7"} device-1 | {"level":"info","message":"PATCH /devices/bf392f66-c558-4eeb-a005-49082cd1e943? 200 46ms","method":"PATCH","requestID":"e3a6933ecc2a63c61df0aa5d875c57c7","responseTime":46,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU","level":"info","message":"auth send jwt","requestID":"a379f32235b9373827a69570b10e6f0a"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"a379f32235b9373827a69570b10e6f0a","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a379f32235b9373827a69570b10e6f0a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1387,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1387,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.352297,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a379f32235b9373827a69570b10e6f0a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a379f32235b9373827a69570b10e6f0a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.906658241Z"}]},"request_id":"852d44eb-9949-454b-9ce9-cf05f85e4d18","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.1329515} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a379f32235b9373827a69570b10e6f0a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a379f32235b9373827a69570b10e6f0a"} device-1 | {"level":"info","message":"GET /devices/1a090665-af14-4521-b949-738fc421a844? 200 15ms","method":"GET","requestID":"a379f32235b9373827a69570b10e6f0a","responseTime":15,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1a090665-af14-4521-b949-738fc421a844? 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":"a379f32235b9373827a69570b10e6f0a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU","level":"info","message":"auth send jwt","requestID":"ab5275b259c1883b253c85c5fcfe0e52"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ab5275b259c1883b253c85c5fcfe0e52","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ab5275b259c1883b253c85c5fcfe0e52"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1388,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1388,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.202296,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ab5275b259c1883b253c85c5fcfe0e52","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ab5275b259c1883b253c85c5fcfe0e52","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.956328911Z"}]},"request_id":"cc7473c2-7dd8-495c-9cd6-e99f78e94cce","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.1556795} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"ab5275b259c1883b253c85c5fcfe0e52","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ab5275b259c1883b253c85c5fcfe0e52"} device-1 | {"level":"info","message":"GET /devices/bf392f66-c558-4eeb-a005-49082cd1e943? 200 16ms","method":"GET","requestID":"ab5275b259c1883b253c85c5fcfe0e52","responseTime":16,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bf392f66-c558-4eeb-a005-49082cd1e943? 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":"ab5275b259c1883b253c85c5fcfe0e52"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU","level":"info","message":"auth send jwt","requestID":"5623e04f42c3a862bf4d86dae421d9de"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"5623e04f42c3a862bf4d86dae421d9de","responseTime":5,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"5623e04f42c3a862bf4d86dae421d9de"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1389,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1389,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.747351,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5623e04f42c3a862bf4d86dae421d9de","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5623e04f42c3a862bf4d86dae421d9de","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Attempting to run experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Attempting to book experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Successfully booked experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73eff470-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73f04290-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1390,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1390,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.473217,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"73eff470-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"73eff470-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1391,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1391,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.740163,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"73f04290-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"73f04290-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.906658241Z"}]},"request_id":"0080ca80-f707-473a-948c-4a574c8146c3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.2162104} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"73eff470-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.956328911Z"}]},"request_id":"c3e2dfc9-ac45-4c0e-b9a3-3762bda1d60e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.2197218} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73eff470-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"73f04290-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/1a090665-af14-4521-b949-738fc421a844? 200 14ms","method":"GET","requestID":"73eff470-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73f04290-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/bf392f66-c558-4eeb-a005-49082cd1e943? 200 15ms","method":"GET","requestID":"73f04290-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Setting up experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Successfully locked booking for experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Attempting to update booking for experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Successfully updated booking for experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Successfully set up experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73f96a50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"73f9b870-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Successfully running experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73fa2da0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1392,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1392,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.300474,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1393,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"73f96a50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"73f96a50-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1393,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.983866,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"73f9b870-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"73f9b870-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1394,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2ea723e6-ea77-473d-afb8-9910c854b574","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.2843397} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1394,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.989291,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"73fa2da0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","object_type":"device","rebac_allow":false,"scope_allow":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":"73fa2da0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.906658241Z"}]},"request_id":"1b43177c-c03a-4ee7-a4be-dc65f7aebfac","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.2856088} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.956328911Z"}]},"request_id":"3aafecfa-de19-41b8-8667-245ecdfe4c6a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.2863393} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"73f96a50-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"73f9b870-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73fa2da0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1a090665-af14-4521-b949-738fc421a844/signaling 200 20ms","method":"POST","requestID":"73fa2da0-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73f96a50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/1a090665-af14-4521-b949-738fc421a844? 200 26ms","method":"GET","requestID":"73f96a50-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"73f9b870-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/bf392f66-c558-4eeb-a005-49082cd1e943? 200 25ms","method":"GET","requestID":"73f9b870-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73fdb010-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"73fe2540-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc67a04e9-5ed4-4385-b584-25663fa804e8#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc67a04e9-5ed4-4385-b584-25663fa804e8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"c982172f-5658-4d00-8002-6881e360d00c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.3011281} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5092563c-47b5-4e26-b62d-e38362c773f7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.3013604} authorization-1 | {"level":"info","message":"POST /relations/update 200 28ms","method":"POST","requestID":"5623e04f42c3a862bf4d86dae421d9de","responseTime":28,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"410100c9-d49b-47d8-ae71-835bdbc3138e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.303721} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1395,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1396,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1395,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.352568,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"73fdb010-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"73fdb010-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"7614a6a2-cfb9-46e6-868e-475c803f3642","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.305629} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1396,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.3458,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"73fe2540-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","object_type":"device","rebac_allow":false,"scope_allow":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":"73fe2540-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73fdb010-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bf392f66-c558-4eeb-a005-49082cd1e943/signaling 200 13ms","method":"POST","requestID":"73fdb010-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"5623e04f42c3a862bf4d86dae421d9de"} experiment-1 | {"level":"info","message":"POST /experiments? 201 140ms","method":"POST","requestID":"5623e04f42c3a862bf4d86dae421d9de","responseTime":140,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.147","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5623e04f42c3a862bf4d86dae421d9de"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"73fe2540-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1a090665-af14-4521-b949-738fc421a844/signaling 200 11ms","method":"POST","requestID":"73fe2540-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"74002110-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU","level":"info","message":"auth send jwt","requestID":"fe083f3380f787657f797a597d782641"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"fe083f3380f787657f797a597d782641","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fe083f3380f787657f797a597d782641"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1397,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1398,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1398,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.675394,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"fe083f3380f787657f797a597d782641","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fe083f3380f787657f797a597d782641","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b173553e-9fe3-4937-812b-b1ab8a32d93f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.3183668} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1397,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.603942,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"74002110-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"74002110-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.906658241Z"}]},"request_id":"ef133d78-90f0-46b8-8d7d-513d22876141","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.321966} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"74002110-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bf392f66-c558-4eeb-a005-49082cd1e943/signaling 200 9ms","method":"POST","requestID":"74002110-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"fe083f3380f787657f797a597d782641","responseTime":2,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7401cec0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7401f5d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fe083f3380f787657f797a597d782641"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/1a090665-af14-4521-b949-738fc421a844? 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":"fe083f3380f787657f797a597d782641"} device-1 | {"level":"info","message":"GET /devices/1a090665-af14-4521-b949-738fc421a844? 200 12ms","method":"GET","requestID":"fe083f3380f787657f797a597d782641","responseTime":12,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1399,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1399,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.77188,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1400,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7401cec0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7401cec0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1400,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.730739,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7401f5d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7401f5d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU","level":"info","message":"auth send jwt","requestID":"6ed73af049817f597e7875c103644717"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"6ed73af049817f597e7875c103644717","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"6ed73af049817f597e7875c103644717"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.906658241Z"}]},"request_id":"afa53e47-fa5a-4eb5-8d34-05e7730943f2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.3337913} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7401cec0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.956328911Z"}]},"request_id":"b10c6adc-f087-43d9-911c-0fdc8b996608","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.3359032} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7401f5d0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1401,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7401cec0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/1a090665-af14-4521-b949-738fc421a844? 200 17ms","method":"GET","requestID":"7401cec0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1401,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.439757,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6ed73af049817f597e7875c103644717","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"6ed73af049817f597e7875c103644717","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7401f5d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/bf392f66-c558-4eeb-a005-49082cd1e943? 200 18ms","method":"GET","requestID":"7401f5d0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Building connection plan","requestID":"5623e04f42c3a862bf4d86dae421d9de"} 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":"a6c41abc-87f5-4504-b54f-6711b61fffc9"},{"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":"70ac8329-f354-44f4-892f-2bb717492ba4"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"56777120-f85d-4bab-9601-e56f3465be6d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"5623e04f42c3a862bf4d86dae421d9de"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"74052a20-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"74052a20-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"74052a20-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:10.956328911Z"}]},"request_id":"b5b402e2-e924-42d1-bf43-68a9c246aa19","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.3478274} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8?id=ec953104-cb48-4ad7-9047-9123ecf9535f","ws://localhost/rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8?id=398c6d7f-28a2-4ad7-b1f3-68aed2eabe38"]},"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/bf392f66-c558-4eeb-a005-49082cd1e943"},{"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/1a090665-af14-4521-b949-738fc421a844"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"5623e04f42c3a862bf4d86dae421d9de"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"6ed73af049817f597e7875c103644717","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7406b0c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1402,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"6ed73af049817f597e7875c103644717"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1402,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.700635,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/bf392f66-c558-4eeb-a005-49082cd1e943? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.030","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6ed73af049817f597e7875c103644717"} device-1 | {"level":"info","message":"GET /devices/bf392f66-c558-4eeb-a005-49082cd1e943? 200 25ms","method":"GET","requestID":"6ed73af049817f597e7875c103644717","responseTime":25,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7406b0c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7406b0c0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"9154c09e-11a5-4da5-aa3c-951d25f0490f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.3653526} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b9f93f6-883b-44d4-8753-e48c65173293","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.3661282} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7406b0c0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7406b0c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7406b0c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb'","requestID":"7406b0c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb'","requestID":"7406b0c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7406b0c0-848f-11ef-9233-95baf63f17e0"} 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":"7406b0c0-848f-11ef-9233-95baf63f17e0","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":"7406b0c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ec835245-220c-41e6-add5-0cd40daf1ddb","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"740b92c0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec953104-cb48-4ad7-9047-9123ecf9535f\" in room \"http://localhost/rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8\"","requestID":"740b92c0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"740b92c0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"740bb9d0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"398c6d7f-28a2-4ad7-b1f3-68aed2eabe38\" in room \"http://localhost/rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8\"","requestID":"740bb9d0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"740bb9d0-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1b02b47e8f3c280e38887842d187e298","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 \"ec953104-cb48-4ad7-9047-9123ecf9535f\" in room \"http://localhost/rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8\""} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1b02b47e8f3c280e38887842d187e298","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec953104-cb48-4ad7-9047-9123ecf9535f\" in room \"http://localhost/rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"ec953104-cb48-4ad7-9047-9123ecf9535f\" in room \"http://localhost/rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"ec953104-cb48-4ad7-9047-9123ecf9535f\" in room \"http://localhost/rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8\""} 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/bf392f66-c558-4eeb-a005-49082cd1e943"},{"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/1a090665-af14-4521-b949-738fc421a844"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb"}}},"level":"info","message":"received a callback","requestID":"1b02b47e8f3c280e38887842d187e298"} device-1 | {"data":{"peerconnection":"ec835245-220c-41e6-add5-0cd40daf1ddb","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 7ms","method":"POST","requestID":"1b02b47e8f3c280e38887842d187e298","responseTime":7,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.009","http_referrer":"","http_user_agent":"node-fetch","requestID":"1b02b47e8f3c280e38887842d187e298"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"5623e04f42c3a862bf4d86dae421d9de"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"740fb170-848f-11ef-9233-95baf63f17e0"} device-1 | {"data":{"peerconnection":"ec835245-220c-41e6-add5-0cd40daf1ddb","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1403,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6d2f94fa-b91c-4548-bc63-a3ea39dfa5c4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.4195712} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1403,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.289598,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"740fb170-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"740fb170-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ec835245-220c-41e6-add5-0cd40daf1ddb","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"740fb170-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1a090665-af14-4521-b949-738fc421a844/signaling 200 15ms","method":"POST","requestID":"740fb170-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"78c84f713c99d2f592d4ea197789a0b1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"78c84f713c99d2f592d4ea197789a0b1","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"74124980-848f-11ef-9233-95baf63f17e0"} 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/bf392f66-c558-4eeb-a005-49082cd1e943"},{"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/1a090665-af14-4521-b949-738fc421a844"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb"}}},"level":"info","message":"received a callback","requestID":"78c84f713c99d2f592d4ea197789a0b1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1404,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a6f6f904-5657-4b14-81ce-186f4f340e1e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.4363856} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1404,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.213976,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"74124980-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","object_type":"device","rebac_allow":false,"scope_allow":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":"74124980-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"74135af0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"74124980-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1405,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} device-1 | {"level":"info","message":"POST /devices/bf392f66-c558-4eeb-a005-49082cd1e943/signaling 200 9ms","method":"POST","requestID":"74124980-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fec835245-220c-41e6-add5-0cd40daf1ddb","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2071ded8-c2da-4bb5-9b61-ebe1934c5efd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.442907} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1405,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.387286,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"74135af0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb","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":"74135af0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"74135af0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb 200 7ms","method":"GET","requestID":"74135af0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"78c84f713c99d2f592d4ea197789a0b1","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"78c84f713c99d2f592d4ea197789a0b1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7416dd60-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1406,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e406d27d-6544-49cf-bf51-0088b1f07781","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.465985} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1406,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.209528,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7416dd60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","object_type":"device","rebac_allow":false,"scope_allow":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":"7416dd60-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7416dd60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bf392f66-c558-4eeb-a005-49082cd1e943/signaling 200 7ms","method":"POST","requestID":"7416dd60-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"74183cf0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1407,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c924c2e-0672-47ed-ab18-219083dc7938","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.4759965} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1407,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.150787,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"74183cf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"74183cf0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"74183cf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1a090665-af14-4521-b949-738fc421a844/signaling 200 9ms","method":"POST","requestID":"74183cf0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU","level":"info","message":"auth send jwt","requestID":"40ad8aa42a550c75ba9678585807e3db"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"40ad8aa42a550c75ba9678585807e3db","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c67a04e9-5ed4-4385-b584-25663fa804e8","requestID":"40ad8aa42a550c75ba9678585807e3db"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1408,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1408,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.725742,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"40ad8aa42a550c75ba9678585807e3db","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"40ad8aa42a550c75ba9678585807e3db","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c67a04e9-5ed4-4385-b584-25663fa804e8","requestID":"40ad8aa42a550c75ba9678585807e3db"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c67a04e9-5ed4-4385-b584-25663fa804e8 HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"40ad8aa42a550c75ba9678585807e3db"} experiment-1 | {"level":"info","message":"GET /experiments/c67a04e9-5ed4-4385-b584-25663fa804e8 200 8ms","method":"GET","requestID":"40ad8aa42a550c75ba9678585807e3db","responseTime":8,"status":200,"url":"/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU","level":"info","message":"auth send jwt","requestID":"651fed330b1dd5d4dc143379791f00da"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"651fed330b1dd5d4dc143379791f00da","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c67a04e9-5ed4-4385-b584-25663fa804e8","requestID":"651fed330b1dd5d4dc143379791f00da"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1409,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1409,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.660278,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"651fed330b1dd5d4dc143379791f00da","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"651fed330b1dd5d4dc143379791f00da","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Attempting to finish experiment","requestID":"651fed330b1dd5d4dc143379791f00da"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"741fb700-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1410,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1410,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.62699,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"741fb700-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"741fb700-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb","device":"1a090665-af14-4521-b949-738fc421a844","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8?id=398c6d7f-28a2-4ad7-b1f3-68aed2eabe38 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.143","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"60b8a04f6bd6611d0ee2e3593d36ed5c"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb","device":"bf392f66-c558-4eeb-a005-49082cd1e943","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8?id=ec953104-cb48-4ad7-9047-9123ecf9535f HTTP/1.1","status": "101","body_bytes_sent":"438","request_time":"0.143","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d7c265c16067d9d1be3836cf9f03ae0d"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"ec835245-220c-41e6-add5-0cd40daf1ddb","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"ec953104-cb48-4ad7-9047-9123ecf9535f\" in room \"http://localhost/rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"ec953104-cb48-4ad7-9047-9123ecf9535f\" from room \"http://localhost/rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"398c6d7f-28a2-4ad7-b1f3-68aed2eabe38\" in room \"http://localhost/rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"398c6d7f-28a2-4ad7-b1f3-68aed2eabe38\" from room \"http://localhost/rooms/be2dfa27-1127-45b0-bfb9-2d988312c2a8\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9ede3c1052d7e13a71ab14cd64661ddc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9ede3c1052d7e13a71ab14cd64661ddc","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fec835245-220c-41e6-add5-0cd40daf1ddb': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fec835245-220c-41e6-add5-0cd40daf1ddb","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"50a59daf-afd6-4460-9f4c-76c6d90ac73a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.535081} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bf3559e5fe3bcf174ea1da8be33f3b7c","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bf3559e5fe3bcf174ea1da8be33f3b7c","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"865e46d2-a006-47eb-b5e5-b692f1ebaf0a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.5357876} 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/bf392f66-c558-4eeb-a005-49082cd1e943"},{"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/1a090665-af14-4521-b949-738fc421a844"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb"}}},"level":"info","message":"received a callback","requestID":"9ede3c1052d7e13a71ab14cd64661ddc"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"741fb700-848f-11ef-9233-95baf63f17e0","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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943"},{"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/1a090665-af14-4521-b949-738fc421a844"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb"}}},"level":"info","message":"received a callback","requestID":"bf3559e5fe3bcf174ea1da8be33f3b7c"} device-1 | {"data":{"peerconnection":"ec835245-220c-41e6-add5-0cd40daf1ddb","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"741fb700-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb 204 34ms","method":"DELETE","requestID":"741fb700-848f-11ef-9233-95baf63f17e0","responseTime":34,"status":204,"url":"/peerconnections/ec835245-220c-41e6-add5-0cd40daf1ddb"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/1a090665-af14-4521-b949-738fc421a844'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"},"level":"info","message":"Successfully finished experiment","requestID":"651fed330b1dd5d4dc143379791f00da"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"74275820-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1411,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fbf392f66-c558-4eeb-a005-49082cd1e943","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"672a8922-3fca-4006-ad46-293f25cbe596","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.5758154} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1411,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.093588,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"74275820-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/bf392f66-c558-4eeb-a005-49082cd1e943","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"74275820-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"74275820-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/bf392f66-c558-4eeb-a005-49082cd1e943/signaling 200 9ms","method":"POST","requestID":"74275820-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/bf392f66-c558-4eeb-a005-49082cd1e943/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc67a04e9-5ed4-4385-b584-25663fa804e8': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc67a04e9-5ed4-4385-b584-25663fa804e8","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"ed770745-d6e7-4c48-a3f6-e0e0bd713668","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.581913} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"742905d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"35d459ba-9b61-4fcf-9e33-70eed640d9fa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.5820155} authorization-1 | {"level":"info","message":"POST /relations/update 200 14ms","method":"POST","requestID":"651fed330b1dd5d4dc143379791f00da","responseTime":14,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1412,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F1a090665-af14-4521-b949-738fc421a844","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8c1a868f-50dd-46b5-8711-11341a5448b4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.586419} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1412,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.232929,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"742905d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/1a090665-af14-4521-b949-738fc421a844","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"742905d0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"742905d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/1a090665-af14-4521-b949-738fc421a844/signaling 200 9ms","method":"POST","requestID":"742905d0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/1a090665-af14-4521-b949-738fc421a844/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c67a04e9-5ed4-4385-b584-25663fa804e8","requestID":"651fed330b1dd5d4dc143379791f00da"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c67a04e9-5ed4-4385-b584-25663fa804e8 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.144","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"651fed330b1dd5d4dc143379791f00da"} experiment-1 | {"level":"info","message":"DELETE /experiments/c67a04e9-5ed4-4385-b584-25663fa804e8 204 142ms","method":"DELETE","requestID":"651fed330b1dd5d4dc143379791f00da","responseTime":142,"status":204,"url":"/experiments/c67a04e9-5ed4-4385-b584-25663fa804e8"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 119ms","method":"POST","requestID":"9ede3c1052d7e13a71ab14cd64661ddc","responseTime":119,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"9ede3c1052d7e13a71ab14cd64661ddc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 118ms","method":"POST","requestID":"bf3559e5fe3bcf174ea1da8be33f3b7c","responseTime":118,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.123","http_referrer":"","http_user_agent":"node-fetch","requestID":"bf3559e5fe3bcf174ea1da8be33f3b7c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU","level":"info","message":"auth send jwt","requestID":"cd3580f831b285c5007bd0b7f0aba841"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"cd3580f831b285c5007bd0b7f0aba841","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"cd3580f831b285c5007bd0b7f0aba841"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1744","request_time":"0.638","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"478b087ddfa40583797d413c360191d4"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"1745","request_time":"0.650","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"27bdfc9ab40a184773a42405fcb6b55a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1413,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1413,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.742356,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"cd3580f831b285c5007bd0b7f0aba841","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"cd3580f831b285c5007bd0b7f0aba841","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/bf392f66-c558-4eeb-a005-49082cd1e943' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/1a090665-af14-4521-b949-738fc421a844' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2b547a9e-0e83-4d8d-b46b-7468bbe01ceb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.679853} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cd3580f831b285c5007bd0b7f0aba841","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b16f8a53-a5ca-4f13-801b-7915ec2cedb1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.6843681} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"cd3580f831b285c5007bd0b7f0aba841","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"d7a769e6-fb72-4373-92bd-03b59af0b111","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.6955452} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"75479600-1922-49e9-86a6-de7f33ce1158","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.6956909} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"cd3580f831b285c5007bd0b7f0aba841","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.695503047Z"}]},"request_id":"8db34b66-74ba-4578-93a8-6645e2562d5e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.6991286} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"cd3580f831b285c5007bd0b7f0aba841","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"cd3580f831b285c5007bd0b7f0aba841"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"cd3580f831b285c5007bd0b7f0aba841","responseTime":41,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +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":"cd3580f831b285c5007bd0b7f0aba841"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU","level":"info","message":"auth send jwt","requestID":"be1817663cc93781cb82c4f06fb609ed"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"be1817663cc93781cb82c4f06fb609ed","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"be1817663cc93781cb82c4f06fb609ed"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1414,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1414,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.70577,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:13Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"be1817663cc93781cb82c4f06fb609ed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293713,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxM30.V9rRy5OEWZvn06hG8EHrmxyGI3reLRNHyFPG1PIpCwU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"be1817663cc93781cb82c4f06fb609ed","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2f13347a-0185-4acf-b535-8c933871351a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.7223775} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"be1817663cc93781cb82c4f06fb609ed","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"6b5a3dc1-cdb7-409a-8b39-cb3c673cfbba","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.726398} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"be1817663cc93781cb82c4f06fb609ed","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"86bb883b-8fb6-4dcc-8c1c-71ad93b273a7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.7352817} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"aa00f05c-ce27-44a9-a706-10c6fc7fcb83","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.73545} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"be1817663cc93781cb82c4f06fb609ed","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.735253162Z"}]},"request_id":"cc8a795d-e632-4674-8b50-910f1c47cf66","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293713.739025} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"be1817663cc93781cb82c4f06fb609ed","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"be1817663cc93781cb82c4f06fb609ed"} device-1 | {"level":"info","message":"POST /devices? 201 33ms","method":"POST","requestID":"be1817663cc93781cb82c4f06fb609ed","responseTime":33,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:13 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.038","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"be1817663cc93781cb82c4f06fb609ed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"52a69f6f3539d9ad24c26db9e5382aa3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"52a69f6f3539d9ad24c26db9e5382aa3","responseTime":2,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b05acf8398f94438cf5fb6e73ac13d06","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"07/Oct/2024:09:35:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/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":"52a69f6f3539d9ad24c26db9e5382aa3"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b05acf8398f94438cf5fb6e73ac13d06","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/websocket 200 1ms","method":"OPTIONS","requestID":"52a69f6f3539d9ad24c26db9e5382aa3","responseTime":1,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8ebce52c-4684-451e-ad6f-75b04aca6637/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":"b05acf8398f94438cf5fb6e73ac13d06"} device-1 | {"level":"info","message":"OPTIONS /devices/8ebce52c-4684-451e-ad6f-75b04aca6637/websocket 200 1ms","method":"OPTIONS","requestID":"b05acf8398f94438cf5fb6e73ac13d06","responseTime":1,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo","level":"info","message":"auth send jwt","requestID":"a5bef8f1f09ab06a6c78bc28cd2c38fa"} authentication-1 | {"level":"info","message":"GET /auth 200 7ms","method":"GET","requestID":"a5bef8f1f09ab06a6c78bc28cd2c38fa","responseTime":7,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo","level":"info","message":"auth send jwt","requestID":"24ff4140279e928351e70166938519b0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a5bef8f1f09ab06a6c78bc28cd2c38fa"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"24ff4140279e928351e70166938519b0","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"24ff4140279e928351e70166938519b0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1415,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1415,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.219313,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1416,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a5bef8f1f09ab06a6c78bc28cd2c38fa","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"a5bef8f1f09ab06a6c78bc28cd2c38fa","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1416,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.767769,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"24ff4140279e928351e70166938519b0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"24ff4140279e928351e70166938519b0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"24ff4140279e928351e70166938519b0"} gateway-1 | {"time_local":"07/Oct/2024:09:35:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/8ebce52c-4684-451e-ad6f-75b04aca6637/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"24ff4140279e928351e70166938519b0"} device-1 | {"level":"info","message":"POST /devices/8ebce52c-4684-451e-ad6f-75b04aca6637/websocket 200 15ms","method":"POST","requestID":"24ff4140279e928351e70166938519b0","responseTime":15,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a5bef8f1f09ab06a6c78bc28cd2c38fa"} gateway-1 | {"time_local":"07/Oct/2024:09:35:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/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":"a5bef8f1f09ab06a6c78bc28cd2c38fa"} device-1 | {"level":"info","message":"POST /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/websocket 200 26ms","method":"POST","requestID":"a5bef8f1f09ab06a6c78bc28cd2c38fa","responseTime":26,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ee60b1b28eb85a8f7734cc1c735576bf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ee60b1b28eb85a8f7734cc1c735576bf","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/8ebce52c-4684-451e-ad6f-75b04aca6637? 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":"ee60b1b28eb85a8f7734cc1c735576bf"} device-1 | {"level":"info","message":"OPTIONS /devices/8ebce52c-4684-451e-ad6f-75b04aca6637? 200 1ms","method":"OPTIONS","requestID":"ee60b1b28eb85a8f7734cc1c735576bf","responseTime":1,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"82907f634e51d324d12e6d5070ff85ba","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"82907f634e51d324d12e6d5070ff85ba","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42? 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":"82907f634e51d324d12e6d5070ff85ba"} device-1 | {"level":"info","message":"OPTIONS /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42? 200 0ms","method":"OPTIONS","requestID":"82907f634e51d324d12e6d5070ff85ba","responseTime":0,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo","level":"info","message":"auth send jwt","requestID":"1b78b90d1b891e52e6a9dea20b2a7b26"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"1b78b90d1b891e52e6a9dea20b2a7b26","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"1b78b90d1b891e52e6a9dea20b2a7b26"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo","level":"info","message":"auth send jwt","requestID":"cfa92ade9c6a93884eaec7472cfb2e8b"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"cfa92ade9c6a93884eaec7472cfb2e8b","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1417,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"cfa92ade9c6a93884eaec7472cfb2e8b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1417,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.752971,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1b78b90d1b891e52e6a9dea20b2a7b26","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"1b78b90d1b891e52e6a9dea20b2a7b26","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1418,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1418,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.722928,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"cfa92ade9c6a93884eaec7472cfb2e8b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cfa92ade9c6a93884eaec7472cfb2e8b","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.695503047Z"}]},"request_id":"a302fe21-f5d6-450c-84d6-a9c664c2c825","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.7729042} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"1b78b90d1b891e52e6a9dea20b2a7b26","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.735253162Z"}]},"request_id":"7493e931-3fc3-4a9b-a0fb-8f119ed905b2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.776093} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cfa92ade9c6a93884eaec7472cfb2e8b","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3fd43722-e6ee-4bbf-a813-b065353512fd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.7785785} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1b78b90d1b891e52e6a9dea20b2a7b26","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8c7ea89c-ba60-4831-9a1e-632a628589a0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.7825742} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"cfa92ade9c6a93884eaec7472cfb2e8b","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.695503047Z"}]},"request_id":"938879fd-464f-4224-926c-ffe0598e9bfd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.7866442} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1b78b90d1b891e52e6a9dea20b2a7b26","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"1b78b90d1b891e52e6a9dea20b2a7b26"} gateway-1 | {"time_local":"07/Oct/2024:09:35:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/8ebce52c-4684-451e-ad6f-75b04aca6637? HTTP/1.1","status": "200","body_bytes_sent":"1007","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":"1b78b90d1b891e52e6a9dea20b2a7b26"} device-1 | {"level":"info","message":"PATCH /devices/8ebce52c-4684-451e-ad6f-75b04aca6637? 200 27ms","method":"PATCH","requestID":"1b78b90d1b891e52e6a9dea20b2a7b26","responseTime":27,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.735253162Z"}]},"request_id":"3cb98a49-0e81-493d-8fc1-091f68e9ef71","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.802124} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"cfa92ade9c6a93884eaec7472cfb2e8b","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"cfa92ade9c6a93884eaec7472cfb2e8b"} gateway-1 | {"time_local":"07/Oct/2024:09:35:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42? 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":"cfa92ade9c6a93884eaec7472cfb2e8b"} device-1 | {"level":"info","message":"PATCH /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42? 200 40ms","method":"PATCH","requestID":"cfa92ade9c6a93884eaec7472cfb2e8b","responseTime":40,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo","level":"info","message":"auth send jwt","requestID":"fc5a4251bea51aec213c605dac80759e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"fc5a4251bea51aec213c605dac80759e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"fc5a4251bea51aec213c605dac80759e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1419,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1419,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.175701,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"fc5a4251bea51aec213c605dac80759e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"fc5a4251bea51aec213c605dac80759e","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.695503047Z"}]},"request_id":"91029a87-3c8e-44e0-892c-d3a23611f1b1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.824918} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"fc5a4251bea51aec213c605dac80759e","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"fc5a4251bea51aec213c605dac80759e"} device-1 | {"level":"info","message":"GET /devices/8ebce52c-4684-451e-ad6f-75b04aca6637? 200 13ms","method":"GET","requestID":"fc5a4251bea51aec213c605dac80759e","responseTime":13,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ebce52c-4684-451e-ad6f-75b04aca6637? 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":"fc5a4251bea51aec213c605dac80759e"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo","level":"info","message":"auth send jwt","requestID":"712a1d83d6e38048dcc6af1c3d3c7019"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"712a1d83d6e38048dcc6af1c3d3c7019","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"712a1d83d6e38048dcc6af1c3d3c7019"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1420,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1420,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.773279,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"712a1d83d6e38048dcc6af1c3d3c7019","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"712a1d83d6e38048dcc6af1c3d3c7019","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.735253162Z"}]},"request_id":"aaaaafe1-58de-47f6-b203-56bbf7cfb311","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.8423316} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"712a1d83d6e38048dcc6af1c3d3c7019","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"712a1d83d6e38048dcc6af1c3d3c7019"} gateway-1 | {"time_local":"07/Oct/2024:09:35:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"712a1d83d6e38048dcc6af1c3d3c7019"} device-1 | {"level":"info","message":"GET /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42? 200 11ms","method":"GET","requestID":"712a1d83d6e38048dcc6af1c3d3c7019","responseTime":11,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo","level":"info","message":"auth send jwt","requestID":"d1095588bc3088e0fed2885d96b533eb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"d1095588bc3088e0fed2885d96b533eb","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"d1095588bc3088e0fed2885d96b533eb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1421,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1421,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.275349,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d1095588bc3088e0fed2885d96b533eb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"d1095588bc3088e0fed2885d96b533eb","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Attempting to run experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Attempting to book experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Successfully booked experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7589a740-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7589f560-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1422,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1422,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.111085,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7589a740-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7589a740-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1423,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1423,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.181103,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7589f560-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7589f560-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.695503047Z"}]},"request_id":"bb22026f-5ca5-48be-9bc0-3212cb4a6158","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.902668} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7589a740-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.735253162Z"}]},"request_id":"376f0427-82c9-4f36-87eb-8fcd1f84b2f9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.9038858} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7589f560-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7589a740-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/8ebce52c-4684-451e-ad6f-75b04aca6637? 200 18ms","method":"GET","requestID":"7589a740-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7589f560-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42? 200 17ms","method":"GET","requestID":"7589f560-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Setting up experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Successfully locked booking for experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Attempting to update booking for experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Successfully updated booking for experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Successfully set up experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"759280e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7592a7f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7592f610-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Successfully running experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1424,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1424,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.249563,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1425,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1425,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.960976,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"759280e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"759280e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7592a7f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7592a7f0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.695503047Z"}]},"request_id":"e61cd965-85cd-4c3b-9522-9c6343333ea1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.9607098} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.735253162Z"}]},"request_id":"8aaf65e7-fdd6-4645-9557-f82cbf36320a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.9613554} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"759280e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6a1adfd0-ee42-4f32-ab57-91044b3390ba","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.9645553} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7592a7f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:37606","level":"info","msg":"Received request.","req_id":1426,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37606","level":"info","msg":"Sent response.","req_id":1426,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.742183,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7592f610-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","object_type":"device","rebac_allow":false,"scope_allow":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":"7592f610-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"759280e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/8ebce52c-4684-451e-ad6f-75b04aca6637? 200 20ms","method":"GET","requestID":"759280e0-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7592a7f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42? 200 19ms","method":"GET","requestID":"7592a7f0-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7592f610-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/8ebce52c-4684-451e-ad6f-75b04aca6637/signaling 200 18ms","method":"POST","requestID":"7592f610-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75960350-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75962a60-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e8b2368-434b-40ae-b603-10fd7e05d78f#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e8b2368-434b-40ae-b603-10fd7e05d78f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"7ce9e5ce-011b-480d-a371-cbc6debcec86","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.9752297} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c14a64b5-c25f-43e3-9cf3-3238bdb70345","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.9755974} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e6fd9593-bedf-4d70-b11f-3b73c6d88335","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.9783697} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1427,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1428,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"d1095588bc3088e0fed2885d96b533eb","responseTime":23,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1427,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.25452,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"75960350-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","object_type":"device","rebac_allow":false,"scope_allow":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":"75960350-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"eb0139bf-76b6-446e-9140-3db338653b4d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.980793} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1428,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.93315,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"75962a60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"75962a60-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75960350-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/8ebce52c-4684-451e-ad6f-75b04aca6637/signaling 200 11ms","method":"POST","requestID":"75960350-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75962a60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/signaling 200 12ms","method":"POST","requestID":"75962a60-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"d1095588bc3088e0fed2885d96b533eb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75982630-848f-11ef-9233-95baf63f17e0"} gateway-1 | {"time_local":"07/Oct/2024:09:35:15 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1212","request_time":"0.140","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"d1095588bc3088e0fed2885d96b533eb"} experiment-1 | {"level":"info","message":"POST /experiments? 201 135ms","method":"POST","requestID":"d1095588bc3088e0fed2885d96b533eb","responseTime":135,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1429,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a74f7cae-1ed7-4624-b418-c0f3d1ecbb0a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293715.9917247} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo","level":"info","message":"auth send jwt","requestID":"41058a2762347d610d702921ea95261e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1429,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.532912,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"41058a2762347d610d702921ea95261e","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"75982630-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","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":"41058a2762347d610d702921ea95261e"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"75982630-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1430,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:15Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1430,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.824134,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:15Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75982630-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/signaling 200 9ms","method":"POST","requestID":"75982630-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"41058a2762347d610d702921ea95261e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"41058a2762347d610d702921ea95261e","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7599d3e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7599faf0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.695503047Z"}]},"request_id":"d6deb194-d20e-46b3-bb45-6f34befed1ed","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.0000153} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"41058a2762347d610d702921ea95261e","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1431,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1431,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.728167,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1432,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7599d3e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"41058a2762347d610d702921ea95261e"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7599d3e0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1432,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.812125,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} gateway-1 | {"time_local":"07/Oct/2024:09:35:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/8ebce52c-4684-451e-ad6f-75b04aca6637? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.015","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"41058a2762347d610d702921ea95261e"} device-1 | {"level":"info","message":"GET /devices/8ebce52c-4684-451e-ad6f-75b04aca6637? 200 10ms","method":"GET","requestID":"41058a2762347d610d702921ea95261e","responseTime":10,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7599faf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"7599faf0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.695503047Z"}]},"request_id":"20a6bba1-0bfb-4613-a261-79f7881c0a03","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.0062153} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7599d3e0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.735253162Z"}]},"request_id":"d743b873-d11f-489a-90aa-092758ec9505","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.006712} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ","level":"info","message":"auth send jwt","requestID":"ef30be5c655c9812c00f1e73ae84a932"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ef30be5c655c9812c00f1e73ae84a932","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7599faf0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ef30be5c655c9812c00f1e73ae84a932"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7599d3e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1433,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} device-1 | {"level":"info","message":"GET /devices/8ebce52c-4684-451e-ad6f-75b04aca6637? 200 13ms","method":"GET","requestID":"7599d3e0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7599faf0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1433,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.778143,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} device-1 | {"level":"info","message":"GET /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42? 200 13ms","method":"GET","requestID":"7599faf0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42?"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ef30be5c655c9812c00f1e73ae84a932","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293716,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Building connection plan","requestID":"d1095588bc3088e0fed2885d96b533eb"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"ef30be5c655c9812c00f1e73ae84a932","responseTime":2,"status":200,"url":"/authorize"} 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":"43f84c10-c948-4e87-9808-21525abafb24"},{"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":"0f0cac3e-4352-415a-9a36-e04c772dbe88"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"8630da6d-0ada-454d-9f6f-f19cbf0604f2"}]},"level":"info","message":"Built pairwise service configurations","requestID":"d1095588bc3088e0fed2885d96b533eb"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"759c44e0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"759c44e0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"759c44e0-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:13.735253162Z"}]},"request_id":"af1df82e-4b4a-4c2e-9f6b-b0490222514e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.015226} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397?id=2f877485-2b8c-4833-9e02-ca96ff86f16d","ws://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397?id=3e3c2cd0-55c8-4d7b-9b26-e51561cd4347"]},"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/8ebce52c-4684-451e-ad6f-75b04aca6637"},{"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/6b30ae9d-4923-475a-89a0-35bdc743aa42"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"d1095588bc3088e0fed2885d96b533eb"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ef30be5c655c9812c00f1e73ae84a932","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"759cba10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1434,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ef30be5c655c9812c00f1e73ae84a932"} gateway-1 | {"time_local":"07/Oct/2024:09:35:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42? 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":"ef30be5c655c9812c00f1e73ae84a932"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1434,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.716011,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} device-1 | {"level":"info","message":"GET /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42? 200 11ms","method":"GET","requestID":"ef30be5c655c9812c00f1e73ae84a932","responseTime":11,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42?"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"759cba10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293715,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNX0.a3JJI3jT-90hZuigptfESsHNZhxplx3aA8PFKyf8Ipo"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"759cba10-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"e91808d3-7d5c-4cd5-8ec8-600b8f9aaf72","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.0282912} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"da8465d4-5150-45e3-98ae-54fa70e17525","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.0284436} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"759cba10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"759cba10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"759cba10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0'","requestID":"759cba10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0'","requestID":"759cba10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"759cba10-848f-11ef-9233-95baf63f17e0"} 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":"759cba10-848f-11ef-9233-95baf63f17e0","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":"759cba10-848f-11ef-9233-95baf63f17e0"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"75a1ea30-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3e3c2cd0-55c8-4d7b-9b26-e51561cd4347\" in room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\"","requestID":"75a1ea30-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"75a1ea30-848f-11ef-8885-7d835fc08c91"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d81c9a39-9680-4ce4-9011-b926c922e0d0","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"75a21140-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"2f877485-2b8c-4833-9e02-ca96ff86f16d\" in room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\"","requestID":"75a21140-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"75a21140-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cef14e26322361176b83bd98d960f93a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 \"3e3c2cd0-55c8-4d7b-9b26-e51561cd4347\" in room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3e3c2cd0-55c8-4d7b-9b26-e51561cd4347\" in room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\""} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cef14e26322361176b83bd98d960f93a","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3e3c2cd0-55c8-4d7b-9b26-e51561cd4347\" in room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3e3c2cd0-55c8-4d7b-9b26-e51561cd4347\" in room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3e3c2cd0-55c8-4d7b-9b26-e51561cd4347\" in room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3e3c2cd0-55c8-4d7b-9b26-e51561cd4347\" in room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"3e3c2cd0-55c8-4d7b-9b26-e51561cd4347\" in room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"3e3c2cd0-55c8-4d7b-9b26-e51561cd4347\" in room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\""} 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/8ebce52c-4684-451e-ad6f-75b04aca6637"},{"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/6b30ae9d-4923-475a-89a0-35bdc743aa42"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0"}}},"level":"info","message":"received a callback","requestID":"cef14e26322361176b83bd98d960f93a"} device-1 | {"data":{"peerconnection":"d81c9a39-9680-4ce4-9011-b926c922e0d0","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"cef14e26322361176b83bd98d960f93a","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.015","http_referrer":"","http_user_agent":"node-fetch","requestID":"cef14e26322361176b83bd98d960f93a"} device-1 | {"data":{"peerconnection":"d81c9a39-9680-4ce4-9011-b926c922e0d0","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"d1095588bc3088e0fed2885d96b533eb"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d81c9a39-9680-4ce4-9011-b926c922e0d0","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75a6f340-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d2b6c60cc63266197bfd38da8d013a11","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"d2b6c60cc63266197bfd38da8d013a11","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1435,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} 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/8ebce52c-4684-451e-ad6f-75b04aca6637"},{"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/6b30ae9d-4923-475a-89a0-35bdc743aa42"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0"}}},"level":"info","message":"received a callback","requestID":"d2b6c60cc63266197bfd38da8d013a11"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"84276f53-d710-4dfc-9054-c14153d34d4d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.0884328} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1435,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.413459,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"75a6f340-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"75a6f340-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"75a804b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1436,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd81c9a39-9680-4ce4-9011-b926c922e0d0","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f0a3acee-0414-4434-b719-36223956ca67","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.0951028} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1436,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.707014,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75a6f340-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/8ebce52c-4684-451e-ad6f-75b04aca6637/signaling 200 12ms","method":"POST","requestID":"75a6f340-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"75a804b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0","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":"75a804b0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75a91620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"75a804b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0 200 9ms","method":"GET","requestID":"75a804b0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1437,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"939bfc52-8ec0-46d3-9f0b-c9792ad2b695","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.102415} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1437,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.293413,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"75a91620-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"75a91620-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75a91620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/signaling 200 8ms","method":"POST","requestID":"75a91620-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"d2b6c60cc63266197bfd38da8d013a11","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.029","http_referrer":"","http_user_agent":"node-fetch","requestID":"d2b6c60cc63266197bfd38da8d013a11"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75ab8720-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1438,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a3163299-8d0a-4a32-81d5-8a446a50b705","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.1182876} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1438,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.484684,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"75ab8720-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","object_type":"device","rebac_allow":false,"scope_allow":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":"75ab8720-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75ab8720-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/8ebce52c-4684-451e-ad6f-75b04aca6637/signaling 200 8ms","method":"POST","requestID":"75ab8720-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75ad0dc0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1439,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cf84ad52-cef7-43e0-8f87-95eb488d3004","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.127959} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1439,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.421195,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"75ad0dc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","object_type":"device","rebac_allow":false,"scope_allow":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":"75ad0dc0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75ad0dc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/signaling 200 7ms","method":"POST","requestID":"75ad0dc0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ","level":"info","message":"auth send jwt","requestID":"99a17fae36b3bfc3262119bcd27ac5e4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"99a17fae36b3bfc3262119bcd27ac5e4","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f","requestID":"99a17fae36b3bfc3262119bcd27ac5e4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1440,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1440,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.176294,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"99a17fae36b3bfc3262119bcd27ac5e4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293716,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"99a17fae36b3bfc3262119bcd27ac5e4","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f","requestID":"99a17fae36b3bfc3262119bcd27ac5e4"} experiment-1 | {"level":"info","message":"GET /experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f 200 13ms","method":"GET","requestID":"99a17fae36b3bfc3262119bcd27ac5e4","responseTime":13,"status":200,"url":"/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"} gateway-1 | {"time_local":"07/Oct/2024:09:35:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f HTTP/1.1","status": "200","body_bytes_sent":"1285","request_time":"0.019","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"99a17fae36b3bfc3262119bcd27ac5e4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ","level":"info","message":"auth send jwt","requestID":"410d6177a3bf231842e5dae5374c862a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"410d6177a3bf231842e5dae5374c862a","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f","requestID":"410d6177a3bf231842e5dae5374c862a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1441,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1441,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.008055,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"410d6177a3bf231842e5dae5374c862a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293716,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"410d6177a3bf231842e5dae5374c862a","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Attempting to finish experiment","requestID":"410d6177a3bf231842e5dae5374c862a"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"75b7e330-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1442,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1442,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":1.302387,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"75b7e330-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293716,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"75b7e330-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0","device":"6b30ae9d-4923-475a-89a0-35bdc743aa42","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0","device":"8ebce52c-4684-451e-ad6f-75b04aca6637","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"07/Oct/2024:09:35:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/9541c879-67f3-40e2-8583-b6b4c9828397?id=3e3c2cd0-55c8-4d7b-9b26-e51561cd4347 HTTP/1.1","status": "101","body_bytes_sent":"874","request_time":"0.161","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"22f68d44e987002fd9cc18004744dc14"} gateway-1 | {"time_local":"07/Oct/2024:09:35:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/9541c879-67f3-40e2-8583-b6b4c9828397?id=2f877485-2b8c-4833-9e02-ca96ff86f16d 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":"1ca7a46f5c2d54e5dcf869d3192715f5"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"3e3c2cd0-55c8-4d7b-9b26-e51561cd4347\" in room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"3e3c2cd0-55c8-4d7b-9b26-e51561cd4347\" from room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"d81c9a39-9680-4ce4-9011-b926c922e0d0","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"2f877485-2b8c-4833-9e02-ca96ff86f16d\" in room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"2f877485-2b8c-4833-9e02-ca96ff86f16d\" from room \"http://localhost/rooms/9541c879-67f3-40e2-8583-b6b4c9828397\""} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd81c9a39-9680-4ce4-9011-b926c922e0d0': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fd81c9a39-9680-4ce4-9011-b926c922e0d0","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"09447159-acad-4465-a3ff-95ca15f787f2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.214166} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e8cb3a264cd7defd845c375ef2119228","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4139cb5e-56c2-4f87-8cd3-d839ad9713ed","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.2144485} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e8cb3a264cd7defd845c375ef2119228","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"75b7e330-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"edff224bd7a21337940a607d96f6b775","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"edff224bd7a21337940a607d96f6b775","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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637"},{"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/6b30ae9d-4923-475a-89a0-35bdc743aa42"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0"}}},"level":"info","message":"received a callback","requestID":"e8cb3a264cd7defd845c375ef2119228"} 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/8ebce52c-4684-451e-ad6f-75b04aca6637"},{"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/6b30ae9d-4923-475a-89a0-35bdc743aa42"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0"}}},"level":"info","message":"received a callback","requestID":"edff224bd7a21337940a607d96f6b775"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"75b7e330-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0 204 40ms","method":"DELETE","requestID":"75b7e330-848f-11ef-9233-95baf63f17e0","responseTime":40,"status":204,"url":"/peerconnections/d81c9a39-9680-4ce4-9011-b926c922e0d0"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42'"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"},"level":"info","message":"Successfully finished experiment","requestID":"410d6177a3bf231842e5dae5374c862a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75c13200-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1443,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F8ebce52c-4684-451e-ad6f-75b04aca6637","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ea0ce8aa-153e-4cd8-a8ef-a8738e7277a4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.2636166} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1443,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.74629,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"75c13200-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/8ebce52c-4684-451e-ad6f-75b04aca6637","object_type":"device","rebac_allow":false,"scope_allow":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":"75c13200-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e8b2368-434b-40ae-b603-10fd7e05d78f': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F8e8b2368-434b-40ae-b603-10fd7e05d78f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"0d8a6a21-2543-400e-8485-05d46221031e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.268704} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75c13200-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7f05419b-5c5a-485a-9df4-850be39e2500","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.268989} device-1 | {"level":"info","message":"POST /devices/8ebce52c-4684-451e-ad6f-75b04aca6637/signaling 200 13ms","method":"POST","requestID":"75c13200-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/8ebce52c-4684-451e-ad6f-75b04aca6637/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"410d6177a3bf231842e5dae5374c862a","responseTime":16,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"75c3a300-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1444,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F6b30ae9d-4923-475a-89a0-35bdc743aa42","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fb9ef243-be96-4909-b394-ded69dddd226","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.2772777} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1444,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.27684,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"75c3a300-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42","object_type":"device","rebac_allow":false,"scope_allow":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":"75c3a300-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"75c3a300-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/signaling 200 11ms","method":"POST","requestID":"75c3a300-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f","requestID":"410d6177a3bf231842e5dae5374c862a"} gateway-1 | {"time_local":"07/Oct/2024:09:35:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f 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":"410d6177a3bf231842e5dae5374c862a"} experiment-1 | {"level":"info","message":"DELETE /experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f 204 153ms","method":"DELETE","requestID":"410d6177a3bf231842e5dae5374c862a","responseTime":153,"status":204,"url":"/experiments/8e8b2368-434b-40ae-b603-10fd7e05d78f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"e8cb3a264cd7defd845c375ef2119228","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.124","http_referrer":"","http_user_agent":"node-fetch","requestID":"e8cb3a264cd7defd845c375ef2119228"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"edff224bd7a21337940a607d96f6b775","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.125","http_referrer":"","http_user_agent":"node-fetch","requestID":"edff224bd7a21337940a607d96f6b775"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ","level":"info","message":"auth send jwt","requestID":"03a44eaf944ae20949698ec288e937c6"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"03a44eaf944ae20949698ec288e937c6","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"03a44eaf944ae20949698ec288e937c6"} gateway-1 | {"time_local":"07/Oct/2024:09:35:16 +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.615","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b118e65c11fcc07b9622e627fe7b0fd2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1445,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1445,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.896245,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"03a44eaf944ae20949698ec288e937c6","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293716,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"03a44eaf944ae20949698ec288e937c6","responseTime":4,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:35:16 +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.628","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"de3c6aa8212108702fb13d39765b36da"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/6b30ae9d-4923-475a-89a0-35bdc743aa42' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"483ecdd2-68cb-4902-af6b-274a3e2fb2b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.3607705} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"03a44eaf944ae20949698ec288e937c6","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f1767f4e-1b14-479f-a6d6-16c2aaf62b30","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.365186} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"03a44eaf944ae20949698ec288e937c6","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/8ebce52c-4684-451e-ad6f-75b04aca6637' closed"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"51cab946-9700-4cc5-95f6-ea70465dd426","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.3749113} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"373e99a9-8cca-4c55-8ebe-e11713dbe408","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.3751228} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"03a44eaf944ae20949698ec288e937c6","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.374876063Z"}]},"request_id":"27392ddc-38d9-46a2-921c-fa7b58cbeab2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.3788738} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"03a44eaf944ae20949698ec288e937c6","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"03a44eaf944ae20949698ec288e937c6"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.043","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"03a44eaf944ae20949698ec288e937c6"} device-1 | {"level":"info","message":"POST /devices? 201 37ms","method":"POST","requestID":"03a44eaf944ae20949698ec288e937c6","responseTime":37,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ","level":"info","message":"auth send jwt","requestID":"81f2f74cd52c326b122783403e3de721"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"81f2f74cd52c326b122783403e3de721","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"81f2f74cd52c326b122783403e3de721"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1446,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1446,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.161515,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"81f2f74cd52c326b122783403e3de721","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293716,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"81f2f74cd52c326b122783403e3de721","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"8f5c5548-c9c7-494c-8346-cbaf94756278","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.3998518} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"81f2f74cd52c326b122783403e3de721","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9dab8abc-ca56-41ee-b0f7-c2fa25c89861","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.4030657} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"81f2f74cd52c326b122783403e3de721","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"a6cc3de9-3e44-494b-afdb-07ad2d283d6d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.4184122} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9f687dcb-b1fc-4595-b359-1ad9ce455b14","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.4185462} authorization-1 | {"level":"info","message":"POST /relations/update 200 17ms","method":"POST","requestID":"81f2f74cd52c326b122783403e3de721","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.418378598Z"}]},"request_id":"9e197914-e13d-4ee6-a901-149e3c3ecd2a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.421669} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"81f2f74cd52c326b122783403e3de721","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"81f2f74cd52c326b122783403e3de721"} device-1 | {"level":"info","message":"POST /devices? 201 38ms","method":"POST","requestID":"81f2f74cd52c326b122783403e3de721","responseTime":38,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.042","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"81f2f74cd52c326b122783403e3de721"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ","level":"info","message":"auth send jwt","requestID":"f0862d176527c270b1a90badd2f5552a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f0862d176527c270b1a90badd2f5552a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f0862d176527c270b1a90badd2f5552a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1447,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1447,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.269005,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f0862d176527c270b1a90badd2f5552a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293716,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f0862d176527c270b1a90badd2f5552a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.418378598Z"}]},"request_id":"21ad7caf-6448-4702-90c8-127146e0f567","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.908128} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f0862d176527c270b1a90badd2f5552a","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2ca654fc-6f4a-494a-ad8b-2eff180143a3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.9130778} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"f0862d176527c270b1a90badd2f5552a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.418378598Z"}]},"request_id":"4cae1250-9813-4e5c-a176-40f457739d7e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293716.9259334} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f0862d176527c270b1a90badd2f5552a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f0862d176527c270b1a90badd2f5552a"} device-1 | {"level":"info","message":"PATCH /devices/37edb158-b939-4b97-8f2d-aa95499d82f9 200 31ms","method":"PATCH","requestID":"f0862d176527c270b1a90badd2f5552a","responseTime":31,"status":200,"url":"/devices/37edb158-b939-4b97-8f2d-aa95499d82f9"} gateway-1 | {"time_local":"07/Oct/2024:09:35:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/37edb158-b939-4b97-8f2d-aa95499d82f9 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f0862d176527c270b1a90badd2f5552a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ","level":"info","message":"auth send jwt","requestID":"93da0b20640f8ff863231cbc48c3f0c4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"93da0b20640f8ff863231cbc48c3f0c4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"93da0b20640f8ff863231cbc48c3f0c4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1448,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1448,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.265605,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:16Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"93da0b20640f8ff863231cbc48c3f0c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293716,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxNn0.6orO3Qw9YXbVPjP8AoFa45Aggr8WvigVbP260tSysVQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"93da0b20640f8ff863231cbc48c3f0c4","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"93da0b20640f8ff863231cbc48c3f0c4"} device-1 | {"level":"info","message":"POST /devices/37edb158-b939-4b97-8f2d-aa95499d82f9/websocket 200 20ms","method":"POST","requestID":"93da0b20640f8ff863231cbc48c3f0c4","responseTime":20,"status":200,"url":"/devices/37edb158-b939-4b97-8f2d-aa95499d82f9/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:16 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/37edb158-b939-4b97-8f2d-aa95499d82f9/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.9","requestID":"93da0b20640f8ff863231cbc48c3f0c4"} device-1 | {"level":"info","message":"device 'http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"31e2670a813ceb26eed3c5bbc2de471e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"31e2670a813ceb26eed3c5bbc2de471e","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/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":"31e2670a813ceb26eed3c5bbc2de471e"} device-1 | {"level":"info","message":"OPTIONS /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/websocket 200 1ms","method":"OPTIONS","requestID":"31e2670a813ceb26eed3c5bbc2de471e","responseTime":1,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s","level":"info","message":"auth send jwt","requestID":"067e62d83199ebba425fbbf2e60f3618"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"067e62d83199ebba425fbbf2e60f3618","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"067e62d83199ebba425fbbf2e60f3618"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1449,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1449,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.208343,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"067e62d83199ebba425fbbf2e60f3618","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"067e62d83199ebba425fbbf2e60f3618","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"067e62d83199ebba425fbbf2e60f3618"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/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":"067e62d83199ebba425fbbf2e60f3618"} device-1 | {"level":"info","message":"POST /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/websocket 200 21ms","method":"POST","requestID":"067e62d83199ebba425fbbf2e60f3618","responseTime":21,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"52d6e5c4bbe0f8dd166c3f3d22feba25","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"52d6e5c4bbe0f8dd166c3f3d22feba25","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c? 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":"52d6e5c4bbe0f8dd166c3f3d22feba25"} device-1 | {"level":"info","message":"OPTIONS /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c? 200 1ms","method":"OPTIONS","requestID":"52d6e5c4bbe0f8dd166c3f3d22feba25","responseTime":1,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s","level":"info","message":"auth send jwt","requestID":"49209cc68d823a9755299cf522185556"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"49209cc68d823a9755299cf522185556","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"49209cc68d823a9755299cf522185556"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1450,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1450,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.25776,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"49209cc68d823a9755299cf522185556","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"49209cc68d823a9755299cf522185556","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.374876063Z"}]},"request_id":"153cdac0-7c03-4c43-a88d-daf1493d2f0b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.530944} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"49209cc68d823a9755299cf522185556","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"98bf7351-21a2-4cff-8862-0d3380a2ad64","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.5376368} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"49209cc68d823a9755299cf522185556","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.374876063Z"}]},"request_id":"c34e2799-df6c-4839-8594-ef1e954a7736","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.550448} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"49209cc68d823a9755299cf522185556","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"49209cc68d823a9755299cf522185556"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c? 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":"49209cc68d823a9755299cf522185556"} device-1 | {"level":"info","message":"PATCH /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c? 200 39ms","method":"PATCH","requestID":"49209cc68d823a9755299cf522185556","responseTime":39,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s","level":"info","message":"auth send jwt","requestID":"12a5f5a0c4034d353add50a8174262c4"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"12a5f5a0c4034d353add50a8174262c4","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12a5f5a0c4034d353add50a8174262c4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1451,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1451,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.113016,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"12a5f5a0c4034d353add50a8174262c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"12a5f5a0c4034d353add50a8174262c4","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.374876063Z"}]},"request_id":"654ebc3b-7118-4c75-a5fe-dfcf6cd762d6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.5827646} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"12a5f5a0c4034d353add50a8174262c4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12a5f5a0c4034d353add50a8174262c4"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c? 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":"12a5f5a0c4034d353add50a8174262c4"} device-1 | {"level":"info","message":"GET /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c? 200 16ms","method":"GET","requestID":"12a5f5a0c4034d353add50a8174262c4","responseTime":16,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s","level":"info","message":"auth send jwt","requestID":"517ae0ab4e660bf99aea8b75a032a2ea"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"517ae0ab4e660bf99aea8b75a032a2ea","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"517ae0ab4e660bf99aea8b75a032a2ea"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1452,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1452,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.427074,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"517ae0ab4e660bf99aea8b75a032a2ea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"517ae0ab4e660bf99aea8b75a032a2ea","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.418378598Z"}]},"request_id":"7ea581cd-a51d-4583-a4ea-42711295df67","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.6047645} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"517ae0ab4e660bf99aea8b75a032a2ea","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"517ae0ab4e660bf99aea8b75a032a2ea"} device-1 | {"level":"info","message":"GET /devices/37edb158-b939-4b97-8f2d-aa95499d82f9? 200 14ms","method":"GET","requestID":"517ae0ab4e660bf99aea8b75a032a2ea","responseTime":14,"status":200,"url":"/devices/37edb158-b939-4b97-8f2d-aa95499d82f9?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/37edb158-b939-4b97-8f2d-aa95499d82f9? 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":"517ae0ab4e660bf99aea8b75a032a2ea"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s","level":"info","message":"auth send jwt","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1453,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1453,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.286924,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Attempting to run experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Attempting to book experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Successfully booked experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"772ea4b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"772ef2d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1454,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1455,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1454,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.331273,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"772ea4b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"772ea4b0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1455,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.015914,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"772ef2d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"772ef2d0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.374876063Z"}]},"request_id":"55d986ec-932f-4e8e-87a9-551bb6fa5f62","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.6632912} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"772ea4b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.418378598Z"}]},"request_id":"3caf49bc-79fc-450a-a4a8-f51e3aaebeee","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.664495} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"772ef2d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"772ea4b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c? 200 20ms","method":"GET","requestID":"772ea4b0-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"772ef2d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/37edb158-b939-4b97-8f2d-aa95499d82f9? 200 18ms","method":"GET","requestID":"772ef2d0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/37edb158-b939-4b97-8f2d-aa95499d82f9?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Setting up experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Successfully locked booking for experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Attempting to update booking for experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Successfully updated booking for experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Successfully set up experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"77388fc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7738b6d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"773904f0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Successfully running experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1456,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1456,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.313986,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1457,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"77388fc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"77388fc0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1457,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.970105,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:37606","level":"info","msg":"Received request.","req_id":1458,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7738b6d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7738b6d0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37606","level":"info","msg":"Sent response.","req_id":1458,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.294087,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"60e6c207-aad2-4ae5-921a-de2c5532fce9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.7287874} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.374876063Z"}]},"request_id":"1b269541-8cef-47ae-ac5c-9076ad7e178d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.730772} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"773904f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","object_type":"device","rebac_allow":false,"scope_allow":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":"773904f0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.418378598Z"}]},"request_id":"3897c802-7a81-405a-b40f-cfa4edc8ae14","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.7322452} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"77388fc0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7738b6d0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"77388fc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c? 200 25ms","method":"GET","requestID":"77388fc0-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"773904f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/signaling 200 22ms","method":"POST","requestID":"773904f0-848f-11ef-9233-95baf63f17e0","responseTime":22,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7738b6d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/37edb158-b939-4b97-8f2d-aa95499d82f9? 200 26ms","method":"GET","requestID":"7738b6d0-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/37edb158-b939-4b97-8f2d-aa95499d82f9?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"773cd580-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"773d4ab0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc3c63145-0785-47e1-8801-e390528e3a9b#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc3c63145-0785-47e1-8801-e390528e3a9b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"f1e02cbc-c194-41cc-8ea3-e987f4b01ddc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.7469726} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9169d5ab-c408-49e9-8521-0def37d3401a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.7471552} authorization-1 | {"level":"info","message":"POST /relations/update 200 22ms","method":"POST","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb","responseTime":22,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1459,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1459,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.084366,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1460,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"00e109c4-5060-4cdc-ae46-b988834bcf61","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.7501853} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"773cd580-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","object_type":"device","rebac_allow":false,"scope_allow":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":"773cd580-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"773cd580-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/37edb158-b939-4b97-8f2d-aa95499d82f9/signaling 200 13ms","method":"POST","requestID":"773cd580-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/37edb158-b939-4b97-8f2d-aa95499d82f9/signaling"} experiment-1 | {"level":"info","message":"POST /experiments? 201 140ms","method":"POST","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb","responseTime":140,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.146","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d89833fa-179d-4d9b-aa71-1c8e073d3e69","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.757505} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1460,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":6.901008,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"773d4ab0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","object_type":"device","rebac_allow":false,"scope_allow":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":"773d4ab0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s","level":"info","message":"auth send jwt","requestID":"d3e72d166be7be8001b82b9ebf5663a7"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d3e72d166be7be8001b82b9ebf5663a7","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d3e72d166be7be8001b82b9ebf5663a7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"773d4ab0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/signaling 200 16ms","method":"POST","requestID":"773d4ab0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1461,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1461,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.974432,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"774009d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d3e72d166be7be8001b82b9ebf5663a7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"d3e72d166be7be8001b82b9ebf5663a7","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1462,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.374876063Z"}]},"request_id":"1d04f911-1f9c-45a5-9244-7ae7dd939112","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.7697937} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3fe46a01-1953-4ee2-ab91-5bc4b46099cd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.7700574} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d3e72d166be7be8001b82b9ebf5663a7","responseTime":2,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1462,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.300381,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"774009d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","object_type":"device","rebac_allow":false,"scope_allow":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":"774009d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d3e72d166be7be8001b82b9ebf5663a7"} device-1 | {"level":"info","message":"GET /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c? 200 12ms","method":"GET","requestID":"d3e72d166be7be8001b82b9ebf5663a7","responseTime":12,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c? 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":"d3e72d166be7be8001b82b9ebf5663a7"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"774009d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/37edb158-b939-4b97-8f2d-aa95499d82f9/signaling 200 10ms","method":"POST","requestID":"774009d0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/37edb158-b939-4b97-8f2d-aa95499d82f9/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7741de90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"77422cb0-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s","level":"info","message":"auth send jwt","requestID":"4552683cec18ac53dfb1c546f07c057a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4552683cec18ac53dfb1c546f07c057a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4552683cec18ac53dfb1c546f07c057a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1463,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1464,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1463,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.91554,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7741de90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7741de90-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1464,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.706307,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:37606","level":"info","msg":"Received request.","req_id":1465,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"77422cb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"77422cb0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37606","level":"info","msg":"Sent response.","req_id":1465,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.806147,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4552683cec18ac53dfb1c546f07c057a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"4552683cec18ac53dfb1c546f07c057a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.374876063Z"}]},"request_id":"7b3e0056-c65a-4b2b-b1df-8ca6a603e9de","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.7864385} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7741de90-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.418378598Z"}]},"request_id":"f728ff98-f7b0-4919-b599-c31d50573f8b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.788634} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"77422cb0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:16.418378598Z"}]},"request_id":"29e65c45-fc25-4bff-be82-4e24263317e2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.790457} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4552683cec18ac53dfb1c546f07c057a","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7741de90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c? 200 15ms","method":"GET","requestID":"7741de90-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"77422cb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/37edb158-b939-4b97-8f2d-aa95499d82f9? 200 17ms","method":"GET","requestID":"77422cb0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/37edb158-b939-4b97-8f2d-aa95499d82f9?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4552683cec18ac53dfb1c546f07c057a"} device-1 | {"level":"info","message":"GET /devices/37edb158-b939-4b97-8f2d-aa95499d82f9? 200 17ms","method":"GET","requestID":"4552683cec18ac53dfb1c546f07c057a","responseTime":17,"status":200,"url":"/devices/37edb158-b939-4b97-8f2d-aa95499d82f9?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/37edb158-b939-4b97-8f2d-aa95499d82f9? 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":"4552683cec18ac53dfb1c546f07c057a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Building connection plan","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} 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":"f941c4d8-8498-4c30-bed3-adae5239c449"},{"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":"e9cb65e2-1d5f-4e62-b8d1-817859863af9"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"096ba3bf-7399-4653-ad95-5785d4fcfab3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"774539f0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"774539f0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"774539f0-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3?id=8df62d94-70b5-44c1-909a-5e24fb1c4f25","ws://localhost/rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3?id=92dcea3f-2d92-4b8b-a1ae-4207fe86d843"]},"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/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c"},{"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/37edb158-b939-4b97-8f2d-aa95499d82f9"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7745af20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1466,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1466,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.921221,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7745af20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7745af20-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"05902b38-3178-472a-9467-f1bcc4e71aea","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.8145587} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7ade1812-68de-4100-8076-6d9c102eeedb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.8148317} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7745af20-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7745af20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7745af20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d'","requestID":"7745af20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d'","requestID":"7745af20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7745af20-848f-11ef-9233-95baf63f17e0"} 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":"7745af20-848f-11ef-9233-95baf63f17e0","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":"7745af20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"774b0650-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"92dcea3f-2d92-4b8b-a1ae-4207fe86d843\" in room \"http://localhost/rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3\"","requestID":"774b0650-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"774b0650-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"abfa33e56fea1158b8d3e40c336f4809","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"abfa33e56fea1158b8d3e40c336f4809","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"774ba290-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"8df62d94-70b5-44c1-909a-5e24fb1c4f25\" in room \"http://localhost/rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3\"","requestID":"774ba290-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"774ba290-848f-11ef-8885-7d835fc08c91"} 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/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c"},{"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/37edb158-b939-4b97-8f2d-aa95499d82f9"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d"}}},"level":"info","message":"received a callback","requestID":"abfa33e56fea1158b8d3e40c336f4809"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"92dcea3f-2d92-4b8b-a1ae-4207fe86d843\" in room \"http://localhost/rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"92dcea3f-2d92-4b8b-a1ae-4207fe86d843\" in room \"http://localhost/rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"92dcea3f-2d92-4b8b-a1ae-4207fe86d843\" in room \"http://localhost/rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"92dcea3f-2d92-4b8b-a1ae-4207fe86d843\" in room \"http://localhost/rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d","statusDeviceA":"new","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"abfa33e56fea1158b8d3e40c336f4809","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","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":"abfa33e56fea1158b8d3e40c336f4809"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bb21bb7764f230d42d86d821ff5b9bc6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bb21bb7764f230d42d86d821ff5b9bc6","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":"new","url":"http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c"},{"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/37edb158-b939-4b97-8f2d-aa95499d82f9"}],"status":"new","type":"websocket","url":"http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d"}}},"level":"info","message":"received a callback","requestID":"bb21bb7764f230d42d86d821ff5b9bc6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"2f3eaaa49d7bca2ac282c3b2c7fd7ebb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"774efdf0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 10ms","method":"POST","requestID":"bb21bb7764f230d42d86d821ff5b9bc6","responseTime":10,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","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":"bb21bb7764f230d42d86d821ff5b9bc6"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1467,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1f2782b5-e79f-43d3-bf4e-5a6af8f1d0c0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.8677425} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1467,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.5691,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"774efdf0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"774efdf0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8f25c7d276d321649e0c04c74e779e35","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"774efdf0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/signaling 200 10ms","method":"POST","requestID":"774efdf0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/signaling"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8f25c7d276d321649e0c04c74e779e35","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7750d2b0-848f-11ef-9233-95baf63f17e0"} 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/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c"},{"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/37edb158-b939-4b97-8f2d-aa95499d82f9"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d"}}},"level":"info","message":"received a callback","requestID":"8f25c7d276d321649e0c04c74e779e35"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1468,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 5ms","method":"POST","requestID":"8f25c7d276d321649e0c04c74e779e35","responseTime":5,"status":200,"url":"/callbacks/experiment"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"06aecae3-0a3e-456d-b044-a22be3ae83f2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.8800237} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","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":"8f25c7d276d321649e0c04c74e779e35"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1468,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.534461,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7750d2b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7750d2b0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7750d2b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/37edb158-b939-4b97-8f2d-aa95499d82f9/signaling 200 10ms","method":"POST","requestID":"7750d2b0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/37edb158-b939-4b97-8f2d-aa95499d82f9/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cc5380fed68c2012fc15a674c65c8e47","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"cc5380fed68c2012fc15a674c65c8e47","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/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c"},{"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/37edb158-b939-4b97-8f2d-aa95499d82f9"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d"}}},"level":"info","message":"received a callback","requestID":"cc5380fed68c2012fc15a674c65c8e47"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"77536ac0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1469,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffefd3b90-9cc7-4d28-98e9-b3638a4b5e1d","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"bf3ad03c-1e4f-4994-8627-0bd99ca0d823","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.8967795} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1469,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.388274,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"77536ac0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d","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":"77536ac0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"77536ac0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d 200 8ms","method":"GET","requestID":"77536ac0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"cc5380fed68c2012fc15a674c65c8e47","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","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":"cc5380fed68c2012fc15a674c65c8e47"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"77571440-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1470,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"308ec16a-cead-4fb5-a787-92d0ccdedcfa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.9200277} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1470,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.383813,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"77571440-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","object_type":"device","rebac_allow":false,"scope_allow":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":"77571440-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"77571440-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/signaling 200 8ms","method":"POST","requestID":"77571440-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"77589ae0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1471,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"af62b4a3-0546-435b-b2cb-9da7e481bc3d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.9314768} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1471,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.444179,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"77589ae0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","object_type":"device","rebac_allow":false,"scope_allow":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":"77589ae0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"77589ae0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/37edb158-b939-4b97-8f2d-aa95499d82f9/signaling 200 9ms","method":"POST","requestID":"77589ae0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/37edb158-b939-4b97-8f2d-aa95499d82f9/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s","level":"info","message":"auth send jwt","requestID":"27e55fe6514b8f98b08cdb6624d101d4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"27e55fe6514b8f98b08cdb6624d101d4","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/c3c63145-0785-47e1-8801-e390528e3a9b","requestID":"27e55fe6514b8f98b08cdb6624d101d4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1472,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1472,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.915758,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"27e55fe6514b8f98b08cdb6624d101d4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"27e55fe6514b8f98b08cdb6624d101d4","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/c3c63145-0785-47e1-8801-e390528e3a9b","requestID":"27e55fe6514b8f98b08cdb6624d101d4"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/c3c63145-0785-47e1-8801-e390528e3a9b HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"27e55fe6514b8f98b08cdb6624d101d4"} experiment-1 | {"level":"info","message":"GET /experiments/c3c63145-0785-47e1-8801-e390528e3a9b 200 11ms","method":"GET","requestID":"27e55fe6514b8f98b08cdb6624d101d4","responseTime":11,"status":200,"url":"/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s","level":"info","message":"auth send jwt","requestID":"6d6c5008d8f362e9c6ff4f744b1141ad"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6d6c5008d8f362e9c6ff4f744b1141ad","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/c3c63145-0785-47e1-8801-e390528e3a9b","requestID":"6d6c5008d8f362e9c6ff4f744b1141ad"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1473,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1473,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.057308,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d6c5008d8f362e9c6ff4f744b1141ad","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"6d6c5008d8f362e9c6ff4f744b1141ad","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Attempting to finish experiment","requestID":"6d6c5008d8f362e9c6ff4f744b1141ad"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"77608a20-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1474,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1474,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.740553,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:18Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"77608a20-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293718,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOH0.20TQJJ-Xt5b05Zt6Op0mX1dTPIPC9lQHw1qenii2d0s"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"77608a20-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3?id=92dcea3f-2d92-4b8b-a1ae-4207fe86d843 HTTP/1.1","status": "101","body_bytes_sent":"436","request_time":"0.156","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"719aa0e074ddcf1dc8c2a1a1f9975ee9"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"92dcea3f-2d92-4b8b-a1ae-4207fe86d843\" in room \"http://localhost/rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"92dcea3f-2d92-4b8b-a1ae-4207fe86d843\" from room \"http://localhost/rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d","device":"9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"07/Oct/2024:09:35:18 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3?id=8df62d94-70b5-44c1-909a-5e24fb1c4f25 HTTP/1.1","status": "101","body_bytes_sent":"2","request_time":"0.153","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"1e2a73626331e67ee50028546832fa40"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"8df62d94-70b5-44c1-909a-5e24fb1c4f25\" in room \"http://localhost/rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"8df62d94-70b5-44c1-909a-5e24fb1c4f25\" from room \"http://localhost/rooms/93fa18cd-3415-4d2c-9af6-0c9fe7ff9ae3\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1ee6fdb15e7e510e9797b41a35b666ee","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffefd3b90-9cc7-4d28-98e9-b3638a4b5e1d': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Ffefd3b90-9cc7-4d28-98e9-b3638a4b5e1d","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"7c3631d7-f319-4d42-8c11-c3cb881f5e73","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.9968355} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fabc56c6-4d14-4756-8904-6d7d71f46a1b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293718.9972339} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1ee6fdb15e7e510e9797b41a35b666ee","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"798ab14d0ff466c6ad59c6a1a867d972","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c"},{"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/37edb158-b939-4b97-8f2d-aa95499d82f9"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d"}}},"level":"info","message":"received a callback","requestID":"1ee6fdb15e7e510e9797b41a35b666ee"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"798ab14d0ff466c6ad59c6a1a867d972","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 7ms","method":"POST","requestID":"77608a20-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","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/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c"},{"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/37edb158-b939-4b97-8f2d-aa95499d82f9"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d"}}},"level":"info","message":"received a callback","requestID":"798ab14d0ff466c6ad59c6a1a867d972"} device-1 | {"data":{"peerconnection":"fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"77608a20-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d 204 40ms","method":"DELETE","requestID":"77608a20-848f-11ef-9233-95baf63f17e0","responseTime":40,"status":204,"url":"/peerconnections/fefd3b90-9cc7-4d28-98e9-b3638a4b5e1d"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"},"level":"info","message":"Successfully finished experiment","requestID":"6d6c5008d8f362e9c6ff4f744b1141ad"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"776915a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1475,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:19Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9015b5df-abc4-4ce1-a3b9-a9e6e7989820","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.0401607} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1475,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.098404,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"776915a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c","object_type":"device","rebac_allow":false,"scope_allow":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":"776915a0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"776915a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/signaling 200 11ms","method":"POST","requestID":"776915a0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"776b5f90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc3c63145-0785-47e1-8801-e390528e3a9b': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fc3c63145-0785-47e1-8801-e390528e3a9b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"edeac7e2-640a-4a6b-ac97-6e9de92d4d41","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.0495903} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fb35125d-c4b2-423a-85ee-42ef4c1cf356","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.050245} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"6d6c5008d8f362e9c6ff4f744b1141ad","responseTime":21,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1476,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:19Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F37edb158-b939-4b97-8f2d-aa95499d82f9","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"fb126263-20a7-44c3-982e-6ec29ee2a3a9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.0557904} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1476,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.643707,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:19Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"776b5f90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/37edb158-b939-4b97-8f2d-aa95499d82f9","object_type":"device","rebac_allow":false,"scope_allow":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":"776b5f90-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"776b5f90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/37edb158-b939-4b97-8f2d-aa95499d82f9/signaling 200 13ms","method":"POST","requestID":"776b5f90-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/37edb158-b939-4b97-8f2d-aa95499d82f9/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/c3c63145-0785-47e1-8801-e390528e3a9b","requestID":"6d6c5008d8f362e9c6ff4f744b1141ad"} gateway-1 | {"time_local":"07/Oct/2024:09:35:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/c3c63145-0785-47e1-8801-e390528e3a9b 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":"6d6c5008d8f362e9c6ff4f744b1141ad"} experiment-1 | {"level":"info","message":"DELETE /experiments/c3c63145-0785-47e1-8801-e390528e3a9b 204 152ms","method":"DELETE","requestID":"6d6c5008d8f362e9c6ff4f744b1141ad","responseTime":152,"status":204,"url":"/experiments/c3c63145-0785-47e1-8801-e390528e3a9b"} gateway-1 | {"time_local":"07/Oct/2024:09:35:19 +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.163","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"b6eb7902754c5ac5fa2e7c58869c9783"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 123ms","method":"POST","requestID":"1ee6fdb15e7e510e9797b41a35b666ee","responseTime":123,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"1ee6fdb15e7e510e9797b41a35b666ee"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 122ms","method":"POST","requestID":"798ab14d0ff466c6ad59c6a1a867d972","responseTime":122,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.126","http_referrer":"","http_user_agent":"node-fetch","requestID":"798ab14d0ff466c6ad59c6a1a867d972"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOX0.KVEscloJ5zGNH0xAJsE0Sx_XPnMnMO-8hrk5UlB_HFQ","level":"info","message":"auth send jwt","requestID":"c42925171a19fe7ac8ec3215f2c62f61"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c42925171a19fe7ac8ec3215f2c62f61","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c42925171a19fe7ac8ec3215f2c62f61"} gateway-1 | {"time_local":"07/Oct/2024:09:35:19 +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.655","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"d634e905ccdbb0ad0aa8d367206c6676"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1477,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1477,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.044787,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c42925171a19fe7ac8ec3215f2c62f61","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293719,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOX0.KVEscloJ5zGNH0xAJsE0Sx_XPnMnMO-8hrk5UlB_HFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c42925171a19fe7ac8ec3215f2c62f61","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/37edb158-b939-4b97-8f2d-aa95499d82f9' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9e7503cb-b0c3-40e8-a715-5e935967ca4a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.1463797} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c42925171a19fe7ac8ec3215f2c62f61","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"10d02cd4-1940-4784-baad-f50589e84372","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.1510134} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c42925171a19fe7ac8ec3215f2c62f61","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/9b8f50c4-ebb8-4403-b943-2ac6ff3e5c2c' closed"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"953ab4c2-d6e2-4e12-9dfd-002968d4d16e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.1618261} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b5130e9e-ec7f-4958-84ff-73479a8bfae1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.1620946} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"c42925171a19fe7ac8ec3215f2c62f61","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.161792144Z"}]},"request_id":"4c944330-47c4-4b0c-9461-9b1501c2c274","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.165889} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c42925171a19fe7ac8ec3215f2c62f61","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c42925171a19fe7ac8ec3215f2c62f61"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"c42925171a19fe7ac8ec3215f2c62f61","responseTime":43,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c42925171a19fe7ac8ec3215f2c62f61"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOX0.KVEscloJ5zGNH0xAJsE0Sx_XPnMnMO-8hrk5UlB_HFQ","level":"info","message":"auth send jwt","requestID":"d12dc03a851c61c5ffe059d69a747b9f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"d12dc03a851c61c5ffe059d69a747b9f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"d12dc03a851c61c5ffe059d69a747b9f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1478,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1478,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.117086,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:19Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d12dc03a851c61c5ffe059d69a747b9f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293719,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOX0.KVEscloJ5zGNH0xAJsE0Sx_XPnMnMO-8hrk5UlB_HFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"d12dc03a851c61c5ffe059d69a747b9f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a6298ff2-a78f-4c8b-9476-78b7c61789d7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.194887} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d12dc03a851c61c5ffe059d69a747b9f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"36654882-96b9-42fe-a3ec-e13695053ac1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.1991003} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"d12dc03a851c61c5ffe059d69a747b9f","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"6ed28339-fe8d-4340-900f-9ca7b578d917","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.2099352} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9acdb267-67b8-4d67-8a63-5aa9865e1608","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.210182} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"d12dc03a851c61c5ffe059d69a747b9f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.209901565Z"}]},"request_id":"09d029b4-9e9d-434a-ad7d-b2b024e88807","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.2138665} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"d12dc03a851c61c5ffe059d69a747b9f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"d12dc03a851c61c5ffe059d69a747b9f"} gateway-1 | {"time_local":"07/Oct/2024:09:35:19 +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":"d12dc03a851c61c5ffe059d69a747b9f"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"d12dc03a851c61c5ffe059d69a747b9f","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOX0.KVEscloJ5zGNH0xAJsE0Sx_XPnMnMO-8hrk5UlB_HFQ","level":"info","message":"auth send jwt","requestID":"13904890a0ae79963bb1467b6c697544"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"13904890a0ae79963bb1467b6c697544","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"13904890a0ae79963bb1467b6c697544"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1479,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1479,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.729775,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"13904890a0ae79963bb1467b6c697544","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293719,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOX0.KVEscloJ5zGNH0xAJsE0Sx_XPnMnMO-8hrk5UlB_HFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"13904890a0ae79963bb1467b6c697544","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.209901565Z"}]},"request_id":"c7e0607f-c442-4a67-9c9a-f2c537164d5c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.6891694} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"13904890a0ae79963bb1467b6c697544","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"64fb1d7a-18a3-4276-b998-062b6529f8c0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.6953874} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"13904890a0ae79963bb1467b6c697544","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.209901565Z"}]},"request_id":"eddd157b-5c4e-4432-b4c8-ff95308587fd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293719.708555} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"13904890a0ae79963bb1467b6c697544","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"13904890a0ae79963bb1467b6c697544"} device-1 | {"level":"info","message":"PATCH /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c 200 30ms","method":"PATCH","requestID":"13904890a0ae79963bb1467b6c697544","responseTime":30,"status":200,"url":"/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c"} gateway-1 | {"time_local":"07/Oct/2024:09:35:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.033","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"13904890a0ae79963bb1467b6c697544"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOX0.KVEscloJ5zGNH0xAJsE0Sx_XPnMnMO-8hrk5UlB_HFQ","level":"info","message":"auth send jwt","requestID":"6edda16cfe290b5d41673e0128d4cc8a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"6edda16cfe290b5d41673e0128d4cc8a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"6edda16cfe290b5d41673e0128d4cc8a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1480,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:19Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1480,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.130519,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:19Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6edda16cfe290b5d41673e0128d4cc8a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293719,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcxOX0.KVEscloJ5zGNH0xAJsE0Sx_XPnMnMO-8hrk5UlB_HFQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"6edda16cfe290b5d41673e0128d4cc8a","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"6edda16cfe290b5d41673e0128d4cc8a"} gateway-1 | {"time_local":"07/Oct/2024:09:35:19 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c/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.9","requestID":"6edda16cfe290b5d41673e0128d4cc8a"} device-1 | {"level":"info","message":"POST /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c/websocket 200 20ms","method":"POST","requestID":"6edda16cfe290b5d41673e0128d4cc8a","responseTime":20,"status":200,"url":"/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"23c4bfd7e7471ba28cf041f42c72bc22","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"23c4bfd7e7471ba28cf041f42c72bc22","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/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":"23c4bfd7e7471ba28cf041f42c72bc22"} device-1 | {"level":"info","message":"OPTIONS /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/websocket 200 1ms","method":"OPTIONS","requestID":"23c4bfd7e7471ba28cf041f42c72bc22","responseTime":1,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg","level":"info","message":"auth send jwt","requestID":"c7afe3ad2141060c1c3cfb293497d3b7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c7afe3ad2141060c1c3cfb293497d3b7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c7afe3ad2141060c1c3cfb293497d3b7"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1481,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1481,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.361691,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c7afe3ad2141060c1c3cfb293497d3b7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c7afe3ad2141060c1c3cfb293497d3b7","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c7afe3ad2141060c1c3cfb293497d3b7"} device-1 | {"level":"info","message":"POST /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/websocket 200 20ms","method":"POST","requestID":"c7afe3ad2141060c1c3cfb293497d3b7","responseTime":20,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/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":"c7afe3ad2141060c1c3cfb293497d3b7"} device-1 | {"level":"info","message":"device 'http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7abde78135e912d71810c613d8066263","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"7abde78135e912d71810c613d8066263","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99? 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":"7abde78135e912d71810c613d8066263"} device-1 | {"level":"info","message":"OPTIONS /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99? 200 1ms","method":"OPTIONS","requestID":"7abde78135e912d71810c613d8066263","responseTime":1,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg","level":"info","message":"auth send jwt","requestID":"f367e678c810f9bb7d41eedc5c426e70"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f367e678c810f9bb7d41eedc5c426e70","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f367e678c810f9bb7d41eedc5c426e70"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1482,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1482,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.490792,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f367e678c810f9bb7d41eedc5c426e70","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"f367e678c810f9bb7d41eedc5c426e70","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.161792144Z"}]},"request_id":"5fa3fe2f-cd1e-4929-ba61-a0b031cc4bfc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.3505461} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f367e678c810f9bb7d41eedc5c426e70","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8b6af411-7eb5-4a63-b9fd-5d3c280d771e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.3570492} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f367e678c810f9bb7d41eedc5c426e70","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.161792144Z"}]},"request_id":"e4ee0e09-7966-4019-a17a-eb958d3659ad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.3706124} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f367e678c810f9bb7d41eedc5c426e70","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f367e678c810f9bb7d41eedc5c426e70"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99? 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":"f367e678c810f9bb7d41eedc5c426e70"} device-1 | {"level":"info","message":"PATCH /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99? 200 37ms","method":"PATCH","requestID":"f367e678c810f9bb7d41eedc5c426e70","responseTime":37,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg","level":"info","message":"auth send jwt","requestID":"26aa7200fe3faf24bf74b285650bec40"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"26aa7200fe3faf24bf74b285650bec40","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"26aa7200fe3faf24bf74b285650bec40"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1483,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1483,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.426593,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"26aa7200fe3faf24bf74b285650bec40","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"26aa7200fe3faf24bf74b285650bec40","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.161792144Z"}]},"request_id":"11c871a5-5a40-4ac3-8675-6089bb5741cf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.39816} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"26aa7200fe3faf24bf74b285650bec40","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"26aa7200fe3faf24bf74b285650bec40"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99? 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":"26aa7200fe3faf24bf74b285650bec40"} device-1 | {"level":"info","message":"GET /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99? 200 18ms","method":"GET","requestID":"26aa7200fe3faf24bf74b285650bec40","responseTime":18,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg","level":"info","message":"auth send jwt","requestID":"5c1aea39e57b00330cc39f554e43d860"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5c1aea39e57b00330cc39f554e43d860","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"5c1aea39e57b00330cc39f554e43d860"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1484,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1484,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.241906,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5c1aea39e57b00330cc39f554e43d860","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"5c1aea39e57b00330cc39f554e43d860","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.209901565Z"}]},"request_id":"895d24d3-4b5d-4ceb-ba38-c85a64a72ac5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.422191} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"5c1aea39e57b00330cc39f554e43d860","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"5c1aea39e57b00330cc39f554e43d860"} device-1 | {"level":"info","message":"GET /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c? 200 16ms","method":"GET","requestID":"5c1aea39e57b00330cc39f554e43d860","responseTime":16,"status":200,"url":"/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c? 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":"5c1aea39e57b00330cc39f554e43d860"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg","level":"info","message":"auth send jwt","requestID":"4a42c29737be15fb96836eedcd6fea17"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4a42c29737be15fb96836eedcd6fea17","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"4a42c29737be15fb96836eedcd6fea17"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1485,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1485,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.261316,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4a42c29737be15fb96836eedcd6fea17","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"4a42c29737be15fb96836eedcd6fea17","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Attempting to run experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Attempting to book experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Successfully booked experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"78ddb440-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"78dddb50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1486,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1486,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.722546,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78ddb440-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"78ddb440-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1487,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1487,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.708387,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78dddb50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"78dddb50-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.161792144Z"}]},"request_id":"94f385e1-d40e-49de-b0de-75d8d654bed3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.4834104} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"78ddb440-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.209901565Z"}]},"request_id":"181dedab-4b1e-44f4-adac-195b298d8675","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.483902} authorization-1 | {"level":"info","message":"POST /relations/query 200 1ms","method":"POST","requestID":"78dddb50-848f-11ef-9233-95baf63f17e0","responseTime":1,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"78ddb440-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99? 200 11ms","method":"GET","requestID":"78ddb440-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"78dddb50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c? 200 11ms","method":"GET","requestID":"78dddb50-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Setting up experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Successfully locked booking for experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Attempting to update booking for experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Successfully updated booking for experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Successfully set up experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"78e75130-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"78e79f50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"78e7ed70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1488,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1489,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1488,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.924434,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78e75130-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"78e75130-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1489,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.082694,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Successfully running experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78e79f50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"78e79f50-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1490,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1490,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.635394,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dadad619-a5cd-4b5f-b6a2-f32eebb0668d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.5513659} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.161792144Z"}]},"request_id":"3ff5e325-7d74-4b2d-a04c-2a40dbd9f6b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.5524907} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78e7ed70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","object_type":"device","rebac_allow":false,"scope_allow":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":"78e7ed70-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"78e75130-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.209901565Z"}]},"request_id":"769cb7cc-1d76-417a-9a7c-a296bfc80707","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.555721} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"78e79f50-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"78e7ed70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/signaling 200 21ms","method":"POST","requestID":"78e7ed70-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"78e75130-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99? 200 26ms","method":"GET","requestID":"78e75130-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"78e79f50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c? 200 26ms","method":"GET","requestID":"78e79f50-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"78ebbe00-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1491,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"78ec5a40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9447d5a0-e142-4e5b-b340-24f633c38faa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.5741048} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0e9a4db7-fb88-434a-a05a-587629ccfb40#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0e9a4db7-fb88-434a-a05a-587629ccfb40","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"8a5cad5a-508a-4055-ac5d-201b1c533dfe","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.5748944} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"784fea5c-eaaf-4e53-8dc3-67b903c7166d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.5751412} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1491,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.650772,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1492,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78ebbe00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","object_type":"device","rebac_allow":false,"scope_allow":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":"78ebbe00-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/update 200 29ms","method":"POST","requestID":"4a42c29737be15fb96836eedcd6fea17","responseTime":29,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ecfef57-6178-42ff-b6bb-d2a0b9c76055","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.5795412} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1492,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.575755,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78ec5a40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","object_type":"device","rebac_allow":false,"scope_allow":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":"78ec5a40-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"78ebbe00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c/signaling 200 16ms","method":"POST","requestID":"78ebbe00-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"78ec5a40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/signaling 200 14ms","method":"POST","requestID":"78ec5a40-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"4a42c29737be15fb96836eedcd6fea17"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"78ef1960-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"4a42c29737be15fb96836eedcd6fea17","responseTime":157,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +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":"4a42c29737be15fb96836eedcd6fea17"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1493,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6332f6fc-e8e9-44f8-978b-b800586a56ce","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.5960696} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg","level":"info","message":"auth send jwt","requestID":"c71edaca24282ee8c6130184f2b8983f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c71edaca24282ee8c6130184f2b8983f","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1493,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.459746,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c71edaca24282ee8c6130184f2b8983f"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78ef1960-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","object_type":"device","rebac_allow":false,"scope_allow":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":"78ef1960-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1494,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"78ef1960-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1494,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.341824,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} device-1 | {"level":"info","message":"POST /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c/signaling 200 12ms","method":"POST","requestID":"78ef1960-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c71edaca24282ee8c6130184f2b8983f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"c71edaca24282ee8c6130184f2b8983f","responseTime":5,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"78f13c40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"78f16350-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.161792144Z"}]},"request_id":"175e0f91-9b5b-4383-befd-8ce58d432c8d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.6067262} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"c71edaca24282ee8c6130184f2b8983f","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1495,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1495,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.056394,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1496,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78f13c40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"78f13c40-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1496,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.972318,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78f16350-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"78f16350-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.161792144Z"}]},"request_id":"20267e17-98c4-4057-b9c1-d5e050ea87af","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.613674} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c71edaca24282ee8c6130184f2b8983f"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99? 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":"c71edaca24282ee8c6130184f2b8983f"} device-1 | {"level":"info","message":"GET /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99? 200 18ms","method":"GET","requestID":"c71edaca24282ee8c6130184f2b8983f","responseTime":18,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99?"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"78f13c40-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.209901565Z"}]},"request_id":"e706f22a-66ec-4395-bbec-5a691eced9c2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.6161005} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"78f16350-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"78f13c40-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg","level":"info","message":"auth send jwt","requestID":"2c1f27d3ce1da3c4a9ca4e64286991d1"} device-1 | {"level":"info","message":"GET /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99? 200 16ms","method":"GET","requestID":"78f13c40-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99?"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2c1f27d3ce1da3c4a9ca4e64286991d1","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"78f16350-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c? 200 17ms","method":"GET","requestID":"78f16350-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Building connection plan","requestID":"4a42c29737be15fb96836eedcd6fea17"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2c1f27d3ce1da3c4a9ca4e64286991d1"} 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":"f6062e86-295d-4373-a973-cb579c782466"},{"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":"f95c57e0-83df-45dd-baa4-4abac00900df"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"1fa88fe0-a031-4a82-97b8-ba98f3e46898"}]},"level":"info","message":"Built pairwise service configurations","requestID":"4a42c29737be15fb96836eedcd6fea17"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"78f44980-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"78f44980-848f-11ef-8885-7d835fc08c91"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1497,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"78f44980-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1497,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.821774,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50?id=68b2e651-9858-476b-b342-3e535529a831","ws://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50?id=b63ada4f-f9d4-4440-bd21-66c2a659d5ae"]},"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/b759e99e-f75b-4a6d-83ca-a4c116b8171c"},{"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/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"4a42c29737be15fb96836eedcd6fea17"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2c1f27d3ce1da3c4a9ca4e64286991d1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2c1f27d3ce1da3c4a9ca4e64286991d1","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"78f50cd0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:19.209901565Z"}]},"request_id":"526bd706-20f2-4602-b9dd-8996162bcbde","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.6305592} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"2c1f27d3ce1da3c4a9ca4e64286991d1","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1498,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1498,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.996083,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78f50cd0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"78f50cd0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2c1f27d3ce1da3c4a9ca4e64286991d1"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c? 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":"2c1f27d3ce1da3c4a9ca4e64286991d1"} device-1 | {"level":"info","message":"GET /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c? 200 15ms","method":"GET","requestID":"2c1f27d3ce1da3c4a9ca4e64286991d1","responseTime":15,"status":200,"url":"/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"364d7dc8-26f2-4cfa-ad25-990b70ae534b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.6431465} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c8095635-b01a-4231-bfa7-87e85fd04cf2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.643485} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"78f50cd0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"78f50cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"78f50cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc'","requestID":"78f50cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc'","requestID":"78f50cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"78f50cd0-848f-11ef-9233-95baf63f17e0"} 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":"78f50cd0-848f-11ef-9233-95baf63f17e0","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":"78f50cd0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b9c88f9d-401d-4af5-bf95-fe7612eda1dc","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"78fb4e60-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"68b2e651-9858-476b-b342-3e535529a831\" in room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\"","requestID":"78fb4e60-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"78fb4e60-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9f0da15fff0bcfe461ea60486edacdd6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"9f0da15fff0bcfe461ea60486edacdd6","responseTime":2,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"78fbc390-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"b63ada4f-f9d4-4440-bd21-66c2a659d5ae\" in room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\"","requestID":"78fbc390-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"78fbc390-848f-11ef-8885-7d835fc08c91"} 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/b759e99e-f75b-4a6d-83ca-a4c116b8171c"},{"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/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc"}}},"level":"info","message":"received a callback","requestID":"9f0da15fff0bcfe461ea60486edacdd6"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"68b2e651-9858-476b-b342-3e535529a831\" in room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"68b2e651-9858-476b-b342-3e535529a831\" in room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"68b2e651-9858-476b-b342-3e535529a831\" in room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"68b2e651-9858-476b-b342-3e535529a831\" in room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"68b2e651-9858-476b-b342-3e535529a831\" in room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"68b2e651-9858-476b-b342-3e535529a831\" in room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"68b2e651-9858-476b-b342-3e535529a831\" in room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"68b2e651-9858-476b-b342-3e535529a831\" in room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\""} device-1 | {"data":{"peerconnection":"b9c88f9d-401d-4af5-bf95-fe7612eda1dc","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"9f0da15fff0bcfe461ea60486edacdd6","responseTime":9,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"9f0da15fff0bcfe461ea60486edacdd6"} device-1 | {"data":{"peerconnection":"b9c88f9d-401d-4af5-bf95-fe7612eda1dc","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"4a42c29737be15fb96836eedcd6fea17"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"78ffe240-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1499,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"97bebd88-2910-4f09-ba34-4d38cc82279a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.704957} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1499,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.491926,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"78ffe240-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","object_type":"device","rebac_allow":false,"scope_allow":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":"78ffe240-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b9c88f9d-401d-4af5-bf95-fe7612eda1dc","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"78ffe240-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/signaling 200 11ms","method":"POST","requestID":"78ffe240-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c575b25ed573b5f65953aff72923b6ae","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c575b25ed573b5f65953aff72923b6ae","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7901de10-848f-11ef-9233-95baf63f17e0"} 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/b759e99e-f75b-4a6d-83ca-a4c116b8171c"},{"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/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc"}}},"level":"info","message":"received a callback","requestID":"c575b25ed573b5f65953aff72923b6ae"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1500,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"13da23c2-fe09-4769-80ff-a8d479e96303","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.7183013} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1500,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.606044,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"7902c870-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7901de10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7901de10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1501,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7901de10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c/signaling 200 9ms","method":"POST","requestID":"7901de10-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb9c88f9d-401d-4af5-bf95-fe7612eda1dc","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1e14b668-29d1-4dba-a1eb-a28f37a2ebad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.7240772} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1501,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":3.574494,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7902c870-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc","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":"7902c870-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"7902c870-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc 200 8ms","method":"GET","requestID":"7902c870-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 28ms","method":"POST","requestID":"c575b25ed573b5f65953aff72923b6ae","responseTime":28,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.032","http_referrer":"","http_user_agent":"node-fetch","requestID":"c575b25ed573b5f65953aff72923b6ae"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"790671f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1502,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"81218308-c695-4e02-9dc6-d9d654353651","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.748258} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1502,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.43315,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"790671f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","object_type":"device","rebac_allow":false,"scope_allow":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":"790671f0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"790671f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c/signaling 200 9ms","method":"POST","requestID":"790671f0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"79081fa0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1503,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a64a1211-dff8-488a-ac13-5317311c839a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.7580538} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1503,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.557968,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"79081fa0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","object_type":"device","rebac_allow":false,"scope_allow":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":"79081fa0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"79081fa0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/signaling 200 8ms","method":"POST","requestID":"79081fa0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg","level":"info","message":"auth send jwt","requestID":"2ab29d7d7efea7e31ce6b2f22940a186"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2ab29d7d7efea7e31ce6b2f22940a186","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40","requestID":"2ab29d7d7efea7e31ce6b2f22940a186"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1504,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1504,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.956676,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2ab29d7d7efea7e31ce6b2f22940a186","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2ab29d7d7efea7e31ce6b2f22940a186","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40","requestID":"2ab29d7d7efea7e31ce6b2f22940a186"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2ab29d7d7efea7e31ce6b2f22940a186"} experiment-1 | {"level":"info","message":"GET /experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40 200 12ms","method":"GET","requestID":"2ab29d7d7efea7e31ce6b2f22940a186","responseTime":12,"status":200,"url":"/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg","level":"info","message":"auth send jwt","requestID":"10b455af7b6bfa5878916f61fa25eeed"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"10b455af7b6bfa5878916f61fa25eeed","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40","requestID":"10b455af7b6bfa5878916f61fa25eeed"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1505,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1505,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.810411,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"10b455af7b6bfa5878916f61fa25eeed","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"10b455af7b6bfa5878916f61fa25eeed","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Attempting to finish experiment","requestID":"10b455af7b6bfa5878916f61fa25eeed"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"79114760-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1506,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1506,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.951724,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"79114760-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"79114760-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50?id=68b2e651-9858-476b-b342-3e535529a831 HTTP/1.1","status": "101","body_bytes_sent":"872","request_time":"0.158","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"c6b83b8abfb6af91b7e9e0617c9c361f"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"68b2e651-9858-476b-b342-3e535529a831\" in room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"68b2e651-9858-476b-b342-3e535529a831\" from room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"b9c88f9d-401d-4af5-bf95-fe7612eda1dc","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50?id=b63ada4f-f9d4-4440-bd21-66c2a659d5ae 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":"2e4e2017ee195789d8a58949aace6fe1"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"b63ada4f-f9d4-4440-bd21-66c2a659d5ae\" in room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"b63ada4f-f9d4-4440-bd21-66c2a659d5ae\" from room \"http://localhost/rooms/1d1bd0fb-f561-40f3-a412-fb0e73d7ab50\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc","device":"b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c52c71e5447e5b5bd4e081103d4ad5a0","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c52c71e5447e5b5bd4e081103d4ad5a0","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb9c88f9d-401d-4af5-bf95-fe7612eda1dc': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fb9c88f9d-401d-4af5-bf95-fe7612eda1dc","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"2c87920c-333e-45fb-a8e4-ae787e52ebd6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.8337755} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6911f6e7729ba913a59697d6a043eafd","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"cbc12ef8-3fde-4416-838a-b5b84d10932b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.8341105} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6911f6e7729ba913a59697d6a043eafd","responseTime":1,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c"},{"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/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc"}}},"level":"info","message":"received a callback","requestID":"c52c71e5447e5b5bd4e081103d4ad5a0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"79114760-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"in","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"in","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"closed","url":"http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c"},{"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/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc"}}},"level":"info","message":"received a callback","requestID":"6911f6e7729ba913a59697d6a043eafd"} device-1 | {"data":{"peerconnection":"b9c88f9d-401d-4af5-bf95-fe7612eda1dc","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/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99'"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"79114760-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc 204 40ms","method":"DELETE","requestID":"79114760-848f-11ef-9233-95baf63f17e0","responseTime":40,"status":204,"url":"/peerconnections/b9c88f9d-401d-4af5-bf95-fe7612eda1dc"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"},"level":"info","message":"Successfully finished experiment","requestID":"10b455af7b6bfa5878916f61fa25eeed"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"791abd40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1507,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb759e99e-f75b-4a6d-83ca-a4c116b8171c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5ad03b07-01d3-495f-a848-1697c66b0270","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.8831325} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1507,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.778363,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"791abd40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c","object_type":"device","rebac_allow":false,"scope_allow":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":"791abd40-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"791abd40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c/signaling 200 13ms","method":"POST","requestID":"791abd40-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/b759e99e-f75b-4a6d-83ca-a4c116b8171c/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0e9a4db7-fb88-434a-a05a-587629ccfb40': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F0e9a4db7-fb88-434a-a05a-587629ccfb40","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"82cf02cd-2030-4f7c-89b3-c05aa2b93a45","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.8905177} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1a7a5047-b31a-447b-bcd1-f949251bacb8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.8907847} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"791d2e40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"10b455af7b6bfa5878916f61fa25eeed","responseTime":20,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1508,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fb1695b8a-2b4a-4d72-b98b-eb51ea65cb99","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"93e11a88-524d-407c-91bd-e7bc3f326811","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.8994818} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1508,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.027045,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"791d2e40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99","object_type":"device","rebac_allow":false,"scope_allow":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":"791d2e40-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"791d2e40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/signaling 200 14ms","method":"POST","requestID":"791d2e40-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40","requestID":"10b455af7b6bfa5878916f61fa25eeed"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40 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":"10b455af7b6bfa5878916f61fa25eeed"} experiment-1 | {"level":"info","message":"DELETE /experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40 204 157ms","method":"DELETE","requestID":"10b455af7b6bfa5878916f61fa25eeed","responseTime":157,"status":204,"url":"/experiments/0e9a4db7-fb88-434a-a05a-587629ccfb40"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +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.221","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"8313ec05661f9597253a08dc588eb0a6"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 129ms","method":"POST","requestID":"c52c71e5447e5b5bd4e081103d4ad5a0","responseTime":129,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.132","http_referrer":"","http_user_agent":"node-fetch","requestID":"c52c71e5447e5b5bd4e081103d4ad5a0"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 128ms","method":"POST","requestID":"6911f6e7729ba913a59697d6a043eafd","responseTime":128,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg","level":"info","message":"auth send jwt","requestID":"2ddbd74bc51fa32e03d3c4c374cfdddb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"2ddbd74bc51fa32e03d3c4c374cfdddb","responseTime":4,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.135","http_referrer":"","http_user_agent":"node-fetch","requestID":"6911f6e7729ba913a59697d6a043eafd"} device-1 | {"level":"info","message":"postDevices called","requestID":"2ddbd74bc51fa32e03d3c4c374cfdddb"} gateway-1 | {"time_local":"07/Oct/2024:09:35:21 +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.680","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7826153c5794ea9d7d5f52100a6d51a0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1509,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1509,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.944396,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:21Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2ddbd74bc51fa32e03d3c4c374cfdddb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293721,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMX0.17ItTc-GR7-ccU__Md56Rad1KH4gnUgWWjHckp9kJdg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2ddbd74bc51fa32e03d3c4c374cfdddb","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/b759e99e-f75b-4a6d-83ca-a4c116b8171c' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"2e758c4d-97b0-4877-835a-f5b24cb1f62e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.9915876} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2ddbd74bc51fa32e03d3c4c374cfdddb","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/b1695b8a-2b4a-4d72-b98b-eb51ea65cb99' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"53881d4b-41f7-4edc-9a56-dd9117461c7a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293721.9966438} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"2ddbd74bc51fa32e03d3c4c374cfdddb","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"4c44953d-fe0c-4f5c-b4f7-683231ed0276","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293722.0069427} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"16b1b75a-df13-490d-9f3c-135f6be4e225","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293722.0071626} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"2ddbd74bc51fa32e03d3c4c374cfdddb","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.006904390Z"}]},"request_id":"3d1508a1-5ef6-4a2a-ad28-a1bb93dd31d4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293722.011247} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"2ddbd74bc51fa32e03d3c4c374cfdddb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"2ddbd74bc51fa32e03d3c4c374cfdddb"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.052","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2ddbd74bc51fa32e03d3c4c374cfdddb"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"2ddbd74bc51fa32e03d3c4c374cfdddb","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMn0.KdYdZPapPgFXl3eJm_omhcbukq-r-fFt7bJ4EZSDqEI","level":"info","message":"auth send jwt","requestID":"6d96f28acf5ef48214e5713aa8659a57"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"6d96f28acf5ef48214e5713aa8659a57","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"6d96f28acf5ef48214e5713aa8659a57"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1510,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1510,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.73223,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:22Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"6d96f28acf5ef48214e5713aa8659a57","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293722,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMn0.KdYdZPapPgFXl3eJm_omhcbukq-r-fFt7bJ4EZSDqEI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"6d96f28acf5ef48214e5713aa8659a57","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"7e7cc9c3-a501-4566-a90c-88460e908b06","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293722.0402107} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"6d96f28acf5ef48214e5713aa8659a57","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4ef11ab3-dedc-48cc-a41c-a1f2ba76118a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293722.044289} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"6d96f28acf5ef48214e5713aa8659a57","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"a73244b8-57f6-4d24-9526-e4fa8cfa4ae9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293722.0545354} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"60572910-9a20-43dd-a111-9fdb9b79ecc8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293722.0547926} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"6d96f28acf5ef48214e5713aa8659a57","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.054489843Z"}]},"request_id":"8c00861d-3ac6-42d5-b419-5bc65edf9ecc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293722.0584662} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"6d96f28acf5ef48214e5713aa8659a57","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"6d96f28acf5ef48214e5713aa8659a57"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.046","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"6d96f28acf5ef48214e5713aa8659a57"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"6d96f28acf5ef48214e5713aa8659a57","responseTime":42,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMn0.KdYdZPapPgFXl3eJm_omhcbukq-r-fFt7bJ4EZSDqEI","level":"info","message":"auth send jwt","requestID":"748aa778d009edc337be64109ba1b04c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"748aa778d009edc337be64109ba1b04c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"748aa778d009edc337be64109ba1b04c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1511,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1511,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.234936,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"748aa778d009edc337be64109ba1b04c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293722,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMn0.KdYdZPapPgFXl3eJm_omhcbukq-r-fFt7bJ4EZSDqEI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"748aa778d009edc337be64109ba1b04c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.006904390Z"}]},"request_id":"dae6a299-dce1-448e-8e8a-b9e1dabf8840","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293722.553312} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"748aa778d009edc337be64109ba1b04c","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b81986ed-059d-40af-9bb5-5096dfe3f52a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293722.5600822} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"748aa778d009edc337be64109ba1b04c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.006904390Z"}]},"request_id":"70da7dee-441a-439f-8255-8f64efdd0fb0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293722.5724025} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"748aa778d009edc337be64109ba1b04c","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"748aa778d009edc337be64109ba1b04c"} device-1 | {"level":"info","message":"PATCH /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c 200 35ms","method":"PATCH","requestID":"748aa778d009edc337be64109ba1b04c","responseTime":35,"status":200,"url":"/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c"} gateway-1 | {"time_local":"07/Oct/2024:09:35:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.041","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"748aa778d009edc337be64109ba1b04c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMn0.KdYdZPapPgFXl3eJm_omhcbukq-r-fFt7bJ4EZSDqEI","level":"info","message":"auth send jwt","requestID":"e75d5677cd34b06f6f9071b259424f48"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"e75d5677cd34b06f6f9071b259424f48","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"e75d5677cd34b06f6f9071b259424f48"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1512,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:22Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1512,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.62993,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:22Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e75d5677cd34b06f6f9071b259424f48","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293722,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyMn0.KdYdZPapPgFXl3eJm_omhcbukq-r-fFt7bJ4EZSDqEI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e75d5677cd34b06f6f9071b259424f48","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"e75d5677cd34b06f6f9071b259424f48"} gateway-1 | {"time_local":"07/Oct/2024:09:35:22 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c/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.9","requestID":"e75d5677cd34b06f6f9071b259424f48"} device-1 | {"level":"info","message":"POST /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c/websocket 200 19ms","method":"POST","requestID":"e75d5677cd34b06f6f9071b259424f48","responseTime":19,"status":200,"url":"/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"57c2d03cd2509dbd872ee8b26b6b7af6","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"57c2d03cd2509dbd872ee8b26b6b7af6","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/df3398b9-8e97-4978-8e75-fc148e456c18/websocket 200 1ms","method":"OPTIONS","requestID":"57c2d03cd2509dbd872ee8b26b6b7af6","responseTime":1,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/df3398b9-8e97-4978-8e75-fc148e456c18/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":"57c2d03cd2509dbd872ee8b26b6b7af6"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI","level":"info","message":"auth send jwt","requestID":"91ddd8380480526f1aaa4a368c27f07d"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"91ddd8380480526f1aaa4a368c27f07d","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"91ddd8380480526f1aaa4a368c27f07d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1513,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1513,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.258599,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"91ddd8380480526f1aaa4a368c27f07d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"91ddd8380480526f1aaa4a368c27f07d","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"91ddd8380480526f1aaa4a368c27f07d"} device-1 | {"level":"info","message":"POST /devices/df3398b9-8e97-4978-8e75-fc148e456c18/websocket 200 19ms","method":"POST","requestID":"91ddd8380480526f1aaa4a368c27f07d","responseTime":19,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/df3398b9-8e97-4978-8e75-fc148e456c18/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.024","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"91ddd8380480526f1aaa4a368c27f07d"} device-1 | {"level":"info","message":"device 'http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7e660b9ccd6210499c5eacdc07c4c5cc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7e660b9ccd6210499c5eacdc07c4c5cc","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/df3398b9-8e97-4978-8e75-fc148e456c18? 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":"7e660b9ccd6210499c5eacdc07c4c5cc"} device-1 | {"level":"info","message":"OPTIONS /devices/df3398b9-8e97-4978-8e75-fc148e456c18? 200 1ms","method":"OPTIONS","requestID":"7e660b9ccd6210499c5eacdc07c4c5cc","responseTime":1,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI","level":"info","message":"auth send jwt","requestID":"f1a20ff871e2178fe2ccde3ac656b995"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f1a20ff871e2178fe2ccde3ac656b995","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"f1a20ff871e2178fe2ccde3ac656b995"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1514,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1514,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.19984,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f1a20ff871e2178fe2ccde3ac656b995","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f1a20ff871e2178fe2ccde3ac656b995","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.054489843Z"}]},"request_id":"70fb0a3d-9734-4c85-83d8-6271f0a7bbab","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.1404448} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f1a20ff871e2178fe2ccde3ac656b995","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"2bf8360d-42dd-4888-b4b0-5f6ab6f341e8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.1475527} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"f1a20ff871e2178fe2ccde3ac656b995","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.054489843Z"}]},"request_id":"32b98883-c08d-4147-aedc-79f3a31cffeb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.1590273} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f1a20ff871e2178fe2ccde3ac656b995","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"f1a20ff871e2178fe2ccde3ac656b995"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/df3398b9-8e97-4978-8e75-fc148e456c18? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.041","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"f1a20ff871e2178fe2ccde3ac656b995"} device-1 | {"level":"info","message":"PATCH /devices/df3398b9-8e97-4978-8e75-fc148e456c18? 200 36ms","method":"PATCH","requestID":"f1a20ff871e2178fe2ccde3ac656b995","responseTime":36,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI","level":"info","message":"auth send jwt","requestID":"e901e7a6e8965b1819e832743fce2fa7"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e901e7a6e8965b1819e832743fce2fa7","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e901e7a6e8965b1819e832743fce2fa7"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1515,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1515,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.722073,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e901e7a6e8965b1819e832743fce2fa7","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e901e7a6e8965b1819e832743fce2fa7","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.006904390Z"}]},"request_id":"d562bb51-95e3-46b5-9a47-75bd1c1b20b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.1859407} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"e901e7a6e8965b1819e832743fce2fa7","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e901e7a6e8965b1819e832743fce2fa7"} device-1 | {"level":"info","message":"GET /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c? 200 15ms","method":"GET","requestID":"e901e7a6e8965b1819e832743fce2fa7","responseTime":15,"status":200,"url":"/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c? 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":"e901e7a6e8965b1819e832743fce2fa7"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI","level":"info","message":"auth send jwt","requestID":"f57efc33a47d64f1f0bf4c915d774edf"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"f57efc33a47d64f1f0bf4c915d774edf","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f57efc33a47d64f1f0bf4c915d774edf"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1516,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1516,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.298694,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f57efc33a47d64f1f0bf4c915d774edf","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"f57efc33a47d64f1f0bf4c915d774edf","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.054489843Z"}]},"request_id":"c95dfefb-c053-49c0-b780-c702522213d3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.2122285} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"f57efc33a47d64f1f0bf4c915d774edf","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f57efc33a47d64f1f0bf4c915d774edf"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/df3398b9-8e97-4978-8e75-fc148e456c18? 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":"f57efc33a47d64f1f0bf4c915d774edf"} device-1 | {"level":"info","message":"GET /devices/df3398b9-8e97-4978-8e75-fc148e456c18? 200 16ms","method":"GET","requestID":"f57efc33a47d64f1f0bf4c915d774edf","responseTime":16,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI","level":"info","message":"auth send jwt","requestID":"914ba4becb1247923818ed22c6242f68"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"914ba4becb1247923818ed22c6242f68","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"914ba4becb1247923818ed22c6242f68"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1517,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1517,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.212918,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"914ba4becb1247923818ed22c6242f68","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"914ba4becb1247923818ed22c6242f68","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Attempting to run experiment","requestID":"914ba4becb1247923818ed22c6242f68"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Attempting to book experiment","requestID":"914ba4becb1247923818ed22c6242f68"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Successfully booked experiment","requestID":"914ba4becb1247923818ed22c6242f68"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a89dda0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a8a2bc0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1518,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1518,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.635611,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1519,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7a89dda0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7a89dda0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1519,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.871938,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7a8a2bc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7a8a2bc0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.006904390Z"}]},"request_id":"b34ab1d2-1110-4c47-9702-15930330cced","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.294414} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7a89dda0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.054489843Z"}]},"request_id":"e24a93b2-1635-4ac5-b5ed-67ab21eee950","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.2958994} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7a8a2bc0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a89dda0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c? 200 21ms","method":"GET","requestID":"7a89dda0-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a8a2bc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/df3398b9-8e97-4978-8e75-fc148e456c18? 200 20ms","method":"GET","requestID":"7a8a2bc0-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Setting up experiment","requestID":"914ba4becb1247923818ed22c6242f68"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"914ba4becb1247923818ed22c6242f68"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Successfully locked booking for experiment","requestID":"914ba4becb1247923818ed22c6242f68"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"914ba4becb1247923818ed22c6242f68"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"914ba4becb1247923818ed22c6242f68"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Attempting to update booking for experiment","requestID":"914ba4becb1247923818ed22c6242f68"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Successfully updated booking for experiment","requestID":"914ba4becb1247923818ed22c6242f68"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Successfully set up experiment","requestID":"914ba4becb1247923818ed22c6242f68"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a95c480-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a9612a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7a9660c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1520,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1520,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.439696,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Successfully running experiment","requestID":"914ba4becb1247923818ed22c6242f68"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7a95c480-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7a95c480-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1521,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1521,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.381957,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7a9612a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7a9612a0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.006904390Z"}]},"request_id":"727bfc46-20c1-497e-bfed-e564dfeb9263","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.3745058} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7a95c480-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.054489843Z"}]},"request_id":"771526a4-f8eb-46d7-bae4-206fbd53745c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.3763373} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7a9612a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:43384","level":"info","msg":"Received request.","req_id":1522,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b1769de1-a7ae-4d5d-b418-2ebc76be0d92","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.3821096} authorization-1 | {"client_addr":"127.0.0.1:43384","level":"info","msg":"Sent response.","req_id":1522,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.401988,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a95c480-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7a9660c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","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 /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c? 200 24ms","method":"GET","requestID":"7a95c480-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c?"} authorization-1 | {"level":"info","message":"POST /authorize 200 18ms","method":"POST","requestID":"7a9660c0-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a9612a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/df3398b9-8e97-4978-8e75-fc148e456c18? 200 24ms","method":"GET","requestID":"7a9612a0-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7a9660c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c/signaling 200 25ms","method":"POST","requestID":"7a9660c0-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Feb9a0b3f-9280-48de-8080-b315391e20ad#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Feb9a0b3f-9280-48de-8080-b315391e20ad","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"55338d3f-5feb-4c1f-8548-99d5a52ca765","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.390139} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7a9a5860-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"30980938-50dc-449e-9b14-03a0d76679de","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.3905253} authorization-1 | {"level":"info","message":"POST /relations/update 200 21ms","method":"POST","requestID":"914ba4becb1247923818ed22c6242f68","responseTime":21,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7a9aa680-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1523,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1524,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9ac7f75-7033-4d6a-b683-f12a751741ad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.3957453} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1523,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.90653,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7a9a5860-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7a9a5860-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e3254586-b28b-4e70-a3d9-1fb72c440999","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.3965547} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1524,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.107018,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7a9aa680-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","object_type":"device","rebac_allow":false,"scope_allow":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":"7a9aa680-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"914ba4becb1247923818ed22c6242f68"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7a9a5860-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c/signaling 200 12ms","method":"POST","requestID":"7a9a5860-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c/signaling"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.183","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"914ba4becb1247923818ed22c6242f68"} experiment-1 | {"level":"info","message":"POST /experiments? 201 175ms","method":"POST","requestID":"914ba4becb1247923818ed22c6242f68","responseTime":175,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7a9aa680-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/df3398b9-8e97-4978-8e75-fc148e456c18/signaling 200 11ms","method":"POST","requestID":"7a9aa680-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7a9ca250-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI","level":"info","message":"auth send jwt","requestID":"a344f79f0b4f3f5c89d9a37e6dbfd7a9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a344f79f0b4f3f5c89d9a37e6dbfd7a9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a344f79f0b4f3f5c89d9a37e6dbfd7a9"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1525,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1526,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"82ccce9e-632c-4e94-a4b4-3ff3e3a55e2d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.411935} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1525,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.089571,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1526,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.692784,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7a9ca250-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","object_type":"device","rebac_allow":false,"scope_allow":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":"7a9ca250-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a344f79f0b4f3f5c89d9a37e6dbfd7a9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a344f79f0b4f3f5c89d9a37e6dbfd7a9","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7a9ca250-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/df3398b9-8e97-4978-8e75-fc148e456c18/signaling 200 13ms","method":"POST","requestID":"7a9ca250-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"914ba4becb1247923818ed22c6242f68"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a9eec40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.006904390Z"}]},"request_id":"cbfd43bd-5d79-4f02-a4f1-b3cd4a6a5bb1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.4209416} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"a344f79f0b4f3f5c89d9a37e6dbfd7a9","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7a9f3a60-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1527,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1527,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.71019,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1528,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a344f79f0b4f3f5c89d9a37e6dbfd7a9"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7a9eec40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c? 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":"a344f79f0b4f3f5c89d9a37e6dbfd7a9"} device-1 | {"level":"info","message":"GET /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c? 200 17ms","method":"GET","requestID":"a344f79f0b4f3f5c89d9a37e6dbfd7a9","responseTime":17,"status":200,"url":"/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c?"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7a9eec40-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1528,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.761751,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7a9f3a60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7a9f3a60-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.006904390Z"}]},"request_id":"3b23985e-3f40-4417-8eda-9ddad2258837","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.4306166} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI","level":"info","message":"auth send jwt","requestID":"c20b43eb1a4263f0ed7dd0afb079aa81"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7a9eec40-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.054489843Z"}]},"request_id":"0b5fb218-2f2f-45d0-a123-d3d9ee1452c5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.4316006} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"c20b43eb1a4263f0ed7dd0afb079aa81","responseTime":4,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7a9f3a60-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"c20b43eb1a4263f0ed7dd0afb079aa81"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a9eec40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1529,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} device-1 | {"level":"info","message":"GET /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c? 200 16ms","method":"GET","requestID":"7a9eec40-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1529,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.679949,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7a9f3a60-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c20b43eb1a4263f0ed7dd0afb079aa81","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} device-1 | {"level":"info","message":"GET /devices/df3398b9-8e97-4978-8e75-fc148e456c18? 200 14ms","method":"GET","requestID":"7a9f3a60-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18?"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c20b43eb1a4263f0ed7dd0afb079aa81","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Building connection plan","requestID":"914ba4becb1247923818ed22c6242f68"} 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":"13f176d5-47ef-4805-a0bc-138e0b9bb7c4"},{"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":"1acbda81-6330-4d60-a146-961271b9dea6"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"1dd51bcd-563f-46d6-a7d7-6f8c2a8ff0a3"}]},"level":"info","message":"Built pairwise service configurations","requestID":"914ba4becb1247923818ed22c6242f68"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:22.054489843Z"}]},"request_id":"8416fc66-c6de-4cd7-9bec-1c8a210160b6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.4399939} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"7aa1f980-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"7aa1f980-848f-11ef-8885-7d835fc08c91"} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c20b43eb1a4263f0ed7dd0afb079aa81","responseTime":2,"status":200,"url":"/relations/query"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"7aa1f980-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/a4351377-5bc7-4a71-8d19-89dcb8abb583?id=1aecb453-3daf-48f7-8c59-5e60bb80f502","ws://localhost/rooms/a4351377-5bc7-4a71-8d19-89dcb8abb583?id=69730c12-7b5a-43fd-b86d-64a0b91af9fe"]},"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/df3398b9-8e97-4978-8e75-fc148e456c18"},{"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/662c9d76-5a4f-439f-b767-b9c39a98ef5c"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"914ba4becb1247923818ed22c6242f68"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"c20b43eb1a4263f0ed7dd0afb079aa81"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/df3398b9-8e97-4978-8e75-fc148e456c18? 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":"c20b43eb1a4263f0ed7dd0afb079aa81"} device-1 | {"level":"info","message":"GET /devices/df3398b9-8e97-4978-8e75-fc148e456c18? 200 10ms","method":"GET","requestID":"c20b43eb1a4263f0ed7dd0afb079aa81","responseTime":10,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18?"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7aa295c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1530,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1530,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.851707,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7aa295c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7aa295c0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"324aa102-35ac-4e6d-91b3-1479ef4977f5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.454921} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8da04324-93b3-425f-a56a-bde0ff934ba2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.4551983} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7aa295c0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7aa295c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7aa295c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45'","requestID":"7aa295c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45'","requestID":"7aa295c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7aa295c0-848f-11ef-9233-95baf63f17e0"} 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":"7aa295c0-848f-11ef-9233-95baf63f17e0","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":"7aa295c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dbc2eead-e06a-4ca7-aea7-731826376d45","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"7aa7c5e0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"69730c12-7b5a-43fd-b86d-64a0b91af9fe\" in room \"http://localhost/rooms/a4351377-5bc7-4a71-8d19-89dcb8abb583\"","requestID":"7aa7c5e0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"7aa7c5e0-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"93caecfc6fb44d4e94522b2b0d6af4a4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"93caecfc6fb44d4e94522b2b0d6af4a4","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"7aa81400-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1aecb453-3daf-48f7-8c59-5e60bb80f502\" in room \"http://localhost/rooms/a4351377-5bc7-4a71-8d19-89dcb8abb583\"","requestID":"7aa81400-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"7aa81400-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1aecb453-3daf-48f7-8c59-5e60bb80f502\" in room \"http://localhost/rooms/a4351377-5bc7-4a71-8d19-89dcb8abb583\"","requestID":"7aa81400-848f-11ef-8885-7d835fc08c91"} 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/df3398b9-8e97-4978-8e75-fc148e456c18"},{"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/662c9d76-5a4f-439f-b767-b9c39a98ef5c"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45"}}},"level":"info","message":"received a callback","requestID":"93caecfc6fb44d4e94522b2b0d6af4a4"} device-1 | {"data":{"peerconnection":"dbc2eead-e06a-4ca7-aea7-731826376d45","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"93caecfc6fb44d4e94522b2b0d6af4a4","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"93caecfc6fb44d4e94522b2b0d6af4a4"} device-1 | {"data":{"peerconnection":"dbc2eead-e06a-4ca7-aea7-731826376d45","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"914ba4becb1247923818ed22c6242f68"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7aac80d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1531,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"dbc2eead-e06a-4ca7-aea7-731826376d45","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4a2d75a1-475a-4d74-bc4c-712b3023fa48","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.5134516} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1531,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.37635,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"68241f186b43ebb3a18fc75616484cdb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/662c9d76-5a4f-439f-b767-b9c39a98ef5c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7aac80d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"68241f186b43ebb3a18fc75616484cdb","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7aac80d0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} 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/df3398b9-8e97-4978-8e75-fc148e456c18"},{"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/662c9d76-5a4f-439f-b767-b9c39a98ef5c"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45"}}},"level":"info","message":"received a callback","requestID":"68241f186b43ebb3a18fc75616484cdb"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"7aaef1d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7aac80d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c/signaling 200 17ms","method":"POST","requestID":"7aac80d0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1532,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7aaf6700-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdbc2eead-e06a-4ca7-aea7-731826376d45","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6935533e-895a-416d-9fbd-3576e900cafe","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.5291584} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1532,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.198488,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1533,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7aaef1d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45","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":"7aaef1d0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b6cd028c-9daa-47e4-b9ae-5ab5a7975ea6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.532403} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1533,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.234587,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7aaf6700-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7aaf6700-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"7aaef1d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45 200 10ms","method":"GET","requestID":"7aaef1d0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7aaf6700-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/df3398b9-8e97-4978-8e75-fc148e456c18/signaling 200 9ms","method":"POST","requestID":"7aaf6700-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 37ms","method":"POST","requestID":"68241f186b43ebb3a18fc75616484cdb","responseTime":37,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.039","http_referrer":"","http_user_agent":"node-fetch","requestID":"68241f186b43ebb3a18fc75616484cdb"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ab33790-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1534,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f7ffac06-1729-4821-b001-17c995f6b74f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.5582292} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1534,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.064532,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7ab33790-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7ab33790-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ab33790-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/df3398b9-8e97-4978-8e75-fc148e456c18/signaling 200 9ms","method":"POST","requestID":"7ab33790-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ab50c50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1535,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dce922d5-bef2-4128-8241-50477226a3c3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.5704625} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1535,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.196843,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7ab50c50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7ab50c50-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ab50c50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c/signaling 200 9ms","method":"POST","requestID":"7ab50c50-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI","level":"info","message":"auth send jwt","requestID":"b490e5bd95dad215e4d472181fde5345"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"b490e5bd95dad215e4d472181fde5345","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/eb9a0b3f-9280-48de-8080-b315391e20ad","requestID":"b490e5bd95dad215e4d472181fde5345"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1536,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1536,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.740355,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b490e5bd95dad215e4d472181fde5345","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b490e5bd95dad215e4d472181fde5345","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/eb9a0b3f-9280-48de-8080-b315391e20ad","requestID":"b490e5bd95dad215e4d472181fde5345"} experiment-1 | {"level":"info","message":"GET /experiments/eb9a0b3f-9280-48de-8080-b315391e20ad 200 11ms","method":"GET","requestID":"b490e5bd95dad215e4d472181fde5345","responseTime":11,"status":200,"url":"/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/eb9a0b3f-9280-48de-8080-b315391e20ad 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":"b490e5bd95dad215e4d472181fde5345"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI","level":"info","message":"auth send jwt","requestID":"f4fc724ded268d31a4caa204aaac05e2"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"f4fc724ded268d31a4caa204aaac05e2","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/eb9a0b3f-9280-48de-8080-b315391e20ad","requestID":"f4fc724ded268d31a4caa204aaac05e2"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1537,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1537,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.72106,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f4fc724ded268d31a4caa204aaac05e2","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f4fc724ded268d31a4caa204aaac05e2","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Attempting to finish experiment","requestID":"f4fc724ded268d31a4caa204aaac05e2"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7abcd480-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1538,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1538,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.794366,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7abcd480-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7abcd480-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a4351377-5bc7-4a71-8d19-89dcb8abb583?id=69730c12-7b5a-43fd-b86d-64a0b91af9fe HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.148","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"4f836527a370c0e96c77ec2f93fe8e9d"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"69730c12-7b5a-43fd-b86d-64a0b91af9fe\" in room \"http://localhost/rooms/a4351377-5bc7-4a71-8d19-89dcb8abb583\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"69730c12-7b5a-43fd-b86d-64a0b91af9fe\" from room \"http://localhost/rooms/a4351377-5bc7-4a71-8d19-89dcb8abb583\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45","device":"df3398b9-8e97-4978-8e75-fc148e456c18","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a4351377-5bc7-4a71-8d19-89dcb8abb583?id=1aecb453-3daf-48f7-8c59-5e60bb80f502 HTTP/1.1","status": "101","body_bytes_sent":"460","request_time":"0.147","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"6e5b0ea3c732739aba7fd62ac22c052b"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"1aecb453-3daf-48f7-8c59-5e60bb80f502\" in room \"http://localhost/rooms/a4351377-5bc7-4a71-8d19-89dcb8abb583\""} device-1 | {"data":{"peerconnection":"dbc2eead-e06a-4ca7-aea7-731826376d45","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"1aecb453-3daf-48f7-8c59-5e60bb80f502\" from room \"http://localhost/rooms/a4351377-5bc7-4a71-8d19-89dcb8abb583\""} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0f4a61866d595fe664c91bb96094b1ed","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0f4a61866d595fe664c91bb96094b1ed","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdbc2eead-e06a-4ca7-aea7-731826376d45': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fdbc2eead-e06a-4ca7-aea7-731826376d45","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"2c45ae7b-f1fe-4764-a448-a8ef362b8b7d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.6309664} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"83506f07-c3d5-4f99-8463-0d2a51d50cb5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.6312993} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"b980d97c5fc3c558590f42ae85ba5462","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18"},{"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/662c9d76-5a4f-439f-b767-b9c39a98ef5c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45"}}},"level":"info","message":"received a callback","requestID":"0f4a61866d595fe664c91bb96094b1ed"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"b980d97c5fc3c558590f42ae85ba5462","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/df3398b9-8e97-4978-8e75-fc148e456c18"},{"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/662c9d76-5a4f-439f-b767-b9c39a98ef5c"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45"}}},"level":"info","message":"received a callback","requestID":"b980d97c5fc3c558590f42ae85ba5462"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"7abcd480-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"dbc2eead-e06a-4ca7-aea7-731826376d45","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7abcd480-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45 204 31ms","method":"DELETE","requestID":"7abcd480-848f-11ef-9233-95baf63f17e0","responseTime":31,"status":204,"url":"/peerconnections/dbc2eead-e06a-4ca7-aea7-731826376d45"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"},"level":"info","message":"Successfully finished experiment","requestID":"f4fc724ded268d31a4caa204aaac05e2"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ac44e90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1539,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fdf3398b9-8e97-4978-8e75-fc148e456c18","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"986056bd-6bee-4fd4-a18c-deca0da7df41","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.6697903} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1539,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.431437,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7ac44e90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7ac44e90-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ac44e90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/df3398b9-8e97-4978-8e75-fc148e456c18/signaling 200 8ms","method":"POST","requestID":"7ac44e90-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/df3398b9-8e97-4978-8e75-fc148e456c18/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Feb9a0b3f-9280-48de-8080-b315391e20ad': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Feb9a0b3f-9280-48de-8080-b315391e20ad","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"db8e04e8-0497-4796-8d67-69e001383fff","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.675354} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"96372eba-bf2a-4597-a068-d4d290b261ba","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.6755233} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7ac5fc40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"f4fc724ded268d31a4caa204aaac05e2","responseTime":13,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1540,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F662c9d76-5a4f-439f-b767-b9c39a98ef5c","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9a7bceec-736b-483c-bf56-f8f77b7ad6d9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.6851008} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1540,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.446302,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7ac5fc40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c","object_type":"device","rebac_allow":false,"scope_allow":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":"7ac5fc40-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7ac5fc40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c/signaling 200 13ms","method":"POST","requestID":"7ac5fc40-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/eb9a0b3f-9280-48de-8080-b315391e20ad","requestID":"f4fc724ded268d31a4caa204aaac05e2"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/eb9a0b3f-9280-48de-8080-b315391e20ad HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.141","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4fc724ded268d31a4caa204aaac05e2"} experiment-1 | {"level":"info","message":"DELETE /experiments/eb9a0b3f-9280-48de-8080-b315391e20ad 204 139ms","method":"DELETE","requestID":"f4fc724ded268d31a4caa204aaac05e2","responseTime":139,"status":204,"url":"/experiments/eb9a0b3f-9280-48de-8080-b315391e20ad"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +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.140","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"012b91f84df3656ff0da5851f35862d2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 116ms","method":"POST","requestID":"0f4a61866d595fe664c91bb96094b1ed","responseTime":116,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.120","http_referrer":"","http_user_agent":"node-fetch","requestID":"0f4a61866d595fe664c91bb96094b1ed"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 115ms","method":"POST","requestID":"b980d97c5fc3c558590f42ae85ba5462","responseTime":115,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"b980d97c5fc3c558590f42ae85ba5462"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +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":"dabf98544cab8d13e46c27e6b5797413"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI","level":"info","message":"auth send jwt","requestID":"a3f6c15b421942602ad6b7fa260222c4"} authentication-1 | {"level":"info","message":"GET /auth 200 11ms","method":"GET","requestID":"a3f6c15b421942602ad6b7fa260222c4","responseTime":11,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a3f6c15b421942602ad6b7fa260222c4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1541,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} device-1 | {"data":{"code":1006,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/662c9d76-5a4f-439f-b767-b9c39a98ef5c' closed"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1541,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.702522,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a3f6c15b421942602ad6b7fa260222c4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"a3f6c15b421942602ad6b7fa260222c4","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/df3398b9-8e97-4978-8e75-fc148e456c18' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"a5311e3d-cb27-4025-af9b-2914f42c6086","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.7730157} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a3f6c15b421942602ad6b7fa260222c4","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e16bf51a-9c07-420a-bef7-cd72b5524273","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.7779768} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"a3f6c15b421942602ad6b7fa260222c4","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"049aa1e5-1106-41c0-a2de-50949c61612a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.7881954} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"fc991f93-206b-418e-a45f-9a9b09bd09aa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.7882805} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"a3f6c15b421942602ad6b7fa260222c4","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.788159438Z"}]},"request_id":"3f9f4291-90ce-49ed-8953-2f6b1c48b4e2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.7922103} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a3f6c15b421942602ad6b7fa260222c4","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a3f6c15b421942602ad6b7fa260222c4"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"445","request_time":"0.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a3f6c15b421942602ad6b7fa260222c4"} device-1 | {"level":"info","message":"POST /devices? 201 36ms","method":"POST","requestID":"a3f6c15b421942602ad6b7fa260222c4","responseTime":36,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI","level":"info","message":"auth send jwt","requestID":"a94571a3abc091d807ce1561477873e1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a94571a3abc091d807ce1561477873e1","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"a94571a3abc091d807ce1561477873e1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1542,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1542,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.710474,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:24Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a94571a3abc091d807ce1561477873e1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293724,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNH0.Ppe0tSA4opNwlR5BIU5m6KJQM9_cDsv4gIJBhj8oSNI"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"a94571a3abc091d807ce1561477873e1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"77248d10-1548-41bc-8cb8-e24654a0dd07","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.8195179} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a94571a3abc091d807ce1561477873e1","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b9a9ef28-452b-4f2f-b217-8d1e9fa0ee74","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.823397} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"a94571a3abc091d807ce1561477873e1","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"4e3ea74b-49d6-4376-8892-413ba95125cf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.834126} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"c37fd5cd-b7cd-4b02-bcf7-5b71115f35db","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.8342388} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"a94571a3abc091d807ce1561477873e1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.834079326Z"}]},"request_id":"77d579b5-7eb7-4cd2-af32-8bfce78817ea","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293724.8381} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"a94571a3abc091d807ce1561477873e1","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"a94571a3abc091d807ce1561477873e1"} device-1 | {"level":"info","message":"POST /devices? 201 42ms","method":"POST","requestID":"a94571a3abc091d807ce1561477873e1","responseTime":42,"status":201,"url":"/devices?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:24 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"437","request_time":"0.044","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a94571a3abc091d807ce1561477873e1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNX0.k02tw7ui7yaUw8TxK5o3fOm9ygaP8c0_2WRYVtAL-PA","level":"info","message":"auth send jwt","requestID":"77dbf7600744f9257f0d3810fcd95aea"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"77dbf7600744f9257f0d3810fcd95aea","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"77dbf7600744f9257f0d3810fcd95aea"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1543,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1543,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.135801,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"77dbf7600744f9257f0d3810fcd95aea","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293725,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNX0.k02tw7ui7yaUw8TxK5o3fOm9ygaP8c0_2WRYVtAL-PA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"77dbf7600744f9257f0d3810fcd95aea","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.788159438Z"}]},"request_id":"29e13825-fe7a-40ff-95e6-894657ce2677","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293725.3168082} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"77dbf7600744f9257f0d3810fcd95aea","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"32012b42-8673-4ba7-a914-087639750655","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293725.3229716} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"77dbf7600744f9257f0d3810fcd95aea","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.788159438Z"}]},"request_id":"120c51f9-e13a-48ff-ae76-1d5194d3a5b7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293725.335735} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"77dbf7600744f9257f0d3810fcd95aea","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"77dbf7600744f9257f0d3810fcd95aea"} device-1 | {"level":"info","message":"PATCH /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68 200 33ms","method":"PATCH","requestID":"77dbf7600744f9257f0d3810fcd95aea","responseTime":33,"status":200,"url":"/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68"} gateway-1 | {"time_local":"07/Oct/2024:09:35:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.039","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"77dbf7600744f9257f0d3810fcd95aea"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNX0.k02tw7ui7yaUw8TxK5o3fOm9ygaP8c0_2WRYVtAL-PA","level":"info","message":"auth send jwt","requestID":"cc5819d81acd56741ed0686b77ecfcf3"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"cc5819d81acd56741ed0686b77ecfcf3","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"cc5819d81acd56741ed0686b77ecfcf3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1544,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:25Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1544,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.684219,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:25Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"cc5819d81acd56741ed0686b77ecfcf3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293725,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNX0.k02tw7ui7yaUw8TxK5o3fOm9ygaP8c0_2WRYVtAL-PA"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"cc5819d81acd56741ed0686b77ecfcf3","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"cc5819d81acd56741ed0686b77ecfcf3"} gateway-1 | {"time_local":"07/Oct/2024:09:35:25 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68/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.9","requestID":"cc5819d81acd56741ed0686b77ecfcf3"} device-1 | {"level":"info","message":"POST /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68/websocket 200 19ms","method":"POST","requestID":"cc5819d81acd56741ed0686b77ecfcf3","responseTime":19,"status":200,"url":"/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"6785876cdd6e19c23434533d42bde3a1","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"6785876cdd6e19c23434533d42bde3a1","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e635e838-83e1-4448-8f31-7da286e83673/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":"6785876cdd6e19c23434533d42bde3a1"} device-1 | {"level":"info","message":"OPTIONS /devices/e635e838-83e1-4448-8f31-7da286e83673/websocket 200 1ms","method":"OPTIONS","requestID":"6785876cdd6e19c23434533d42bde3a1","responseTime":1,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNn0.WTzfL_1q7H4L6L8gSdF98Zyi0UofVoJi05Hymvb07Ks","level":"info","message":"auth send jwt","requestID":"494f8a71fec487d21f120b406f43450e"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"494f8a71fec487d21f120b406f43450e","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"494f8a71fec487d21f120b406f43450e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1545,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1545,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.209773,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"494f8a71fec487d21f120b406f43450e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293726,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNn0.WTzfL_1q7H4L6L8gSdF98Zyi0UofVoJi05Hymvb07Ks"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"494f8a71fec487d21f120b406f43450e","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"494f8a71fec487d21f120b406f43450e"} gateway-1 | {"time_local":"07/Oct/2024:09:35:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/e635e838-83e1-4448-8f31-7da286e83673/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":"494f8a71fec487d21f120b406f43450e"} device-1 | {"level":"info","message":"POST /devices/e635e838-83e1-4448-8f31-7da286e83673/websocket 200 21ms","method":"POST","requestID":"494f8a71fec487d21f120b406f43450e","responseTime":21,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"73e217f182315cb032becb7f058d2cdc","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"73e217f182315cb032becb7f058d2cdc","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/e635e838-83e1-4448-8f31-7da286e83673? 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":"73e217f182315cb032becb7f058d2cdc"} device-1 | {"level":"info","message":"OPTIONS /devices/e635e838-83e1-4448-8f31-7da286e83673? 200 1ms","method":"OPTIONS","requestID":"73e217f182315cb032becb7f058d2cdc","responseTime":1,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNn0.WTzfL_1q7H4L6L8gSdF98Zyi0UofVoJi05Hymvb07Ks","level":"info","message":"auth send jwt","requestID":"e7f8d3cf51539affa6839ae5b3bed636"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"e7f8d3cf51539affa6839ae5b3bed636","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e7f8d3cf51539affa6839ae5b3bed636"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1546,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1546,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.344184,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:26Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e7f8d3cf51539affa6839ae5b3bed636","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293726,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNn0.WTzfL_1q7H4L6L8gSdF98Zyi0UofVoJi05Hymvb07Ks"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"e7f8d3cf51539affa6839ae5b3bed636","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.834079326Z"}]},"request_id":"0bf782be-5e11-47ce-8fe1-0ae2bc591eed","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293726.9356532} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"e7f8d3cf51539affa6839ae5b3bed636","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"50aa4e62-2172-4fad-8c1a-edbed3f3f3b9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293726.943319} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"e7f8d3cf51539affa6839ae5b3bed636","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.834079326Z"}]},"request_id":"23040a4d-a46a-4be0-be16-166ecf29fccf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293726.9534104} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e7f8d3cf51539affa6839ae5b3bed636","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e7f8d3cf51539affa6839ae5b3bed636"} gateway-1 | {"time_local":"07/Oct/2024:09:35:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/e635e838-83e1-4448-8f31-7da286e83673? HTTP/1.1","status": "200","body_bytes_sent":"1007","request_time":"0.044","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e7f8d3cf51539affa6839ae5b3bed636"} device-1 | {"level":"info","message":"PATCH /devices/e635e838-83e1-4448-8f31-7da286e83673? 200 36ms","method":"PATCH","requestID":"e7f8d3cf51539affa6839ae5b3bed636","responseTime":36,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNn0.WTzfL_1q7H4L6L8gSdF98Zyi0UofVoJi05Hymvb07Ks","level":"info","message":"auth send jwt","requestID":"475b08e7dcdc44e5a6fa3998989cbd66"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"475b08e7dcdc44e5a6fa3998989cbd66","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"475b08e7dcdc44e5a6fa3998989cbd66"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1547,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1547,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.41242,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"475b08e7dcdc44e5a6fa3998989cbd66","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293726,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNn0.WTzfL_1q7H4L6L8gSdF98Zyi0UofVoJi05Hymvb07Ks"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"475b08e7dcdc44e5a6fa3998989cbd66","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.788159438Z"}]},"request_id":"96f0b1df-4647-4d70-80af-ba8d4c1c0c05","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293726.9808831} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"475b08e7dcdc44e5a6fa3998989cbd66","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"475b08e7dcdc44e5a6fa3998989cbd66"} device-1 | {"level":"info","message":"GET /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68? 200 16ms","method":"GET","requestID":"475b08e7dcdc44e5a6fa3998989cbd66","responseTime":16,"status":200,"url":"/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:26 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68? 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":"475b08e7dcdc44e5a6fa3998989cbd66"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNn0.WTzfL_1q7H4L6L8gSdF98Zyi0UofVoJi05Hymvb07Ks","level":"info","message":"auth send jwt","requestID":"a09bab708446966fd23c62bb65069fbc"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a09bab708446966fd23c62bb65069fbc","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"a09bab708446966fd23c62bb65069fbc"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1548,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:26Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1548,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.708106,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:26Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a09bab708446966fd23c62bb65069fbc","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293726,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyNn0.WTzfL_1q7H4L6L8gSdF98Zyi0UofVoJi05Hymvb07Ks"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a09bab708446966fd23c62bb65069fbc","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.834079326Z"}]},"request_id":"a0281995-bfda-420f-8268-6ba6216ff80f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.0051937} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"a09bab708446966fd23c62bb65069fbc","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"a09bab708446966fd23c62bb65069fbc"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e635e838-83e1-4448-8f31-7da286e83673? 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":"a09bab708446966fd23c62bb65069fbc"} device-1 | {"level":"info","message":"GET /devices/e635e838-83e1-4448-8f31-7da286e83673? 200 17ms","method":"GET","requestID":"a09bab708446966fd23c62bb65069fbc","responseTime":17,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU","level":"info","message":"auth send jwt","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1549,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1549,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.199389,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Attempting to run experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Attempting to book experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Successfully booked experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c320f60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c325d80-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1550,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1550,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.969093,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c320f60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7c320f60-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1551,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1551,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.170965,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c325d80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7c325d80-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.788159438Z"}]},"request_id":"011fbf46-7324-4d0e-af3c-8f4b3c52f5ff","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.0731525} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7c320f60-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.834079326Z"}]},"request_id":"b986526c-c9c5-4c20-bdb1-4a2dbaca9ad4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.0746531} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7c325d80-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c320f60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68? 200 21ms","method":"GET","requestID":"7c320f60-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c325d80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e635e838-83e1-4448-8f31-7da286e83673? 200 20ms","method":"GET","requestID":"7c325d80-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Setting up experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Successfully locked booking for experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Attempting to update booking for experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Successfully updated booking for experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Successfully set up experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c3e1d50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c3e4460-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7c3eb990-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1552,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1552,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.264821,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1553,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c3e1d50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7c3e1d50-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1553,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.997843,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Successfully running experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c3e4460-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7c3e4460-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1554,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1554,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.238686,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd28ca8b-0a78-47ff-bfed-805e37935b50","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.1548507} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.788159438Z"}]},"request_id":"ab1a72d1-5fe4-4998-a6cc-f399e2cfdb22","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.155898} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c3eb990-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","object_type":"device","rebac_allow":false,"scope_allow":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":"7c3eb990-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"level":"info","message":"POST /relations/query 200 9ms","method":"POST","requestID":"7c3e1d50-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.834079326Z"}]},"request_id":"e0055de4-fe4d-490e-b5e6-f99e8dc3371a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.1592765} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7c3e4460-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7c3eb990-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68/signaling 200 23ms","method":"POST","requestID":"7c3eb990-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c3e1d50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68? 200 29ms","method":"GET","requestID":"7c3e1d50-848f-11ef-9233-95baf63f17e0","responseTime":29,"status":200,"url":"/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c3e4460-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e635e838-83e1-4448-8f31-7da286e83673? 200 30ms","method":"GET","requestID":"7c3e4460-848f-11ef-9233-95baf63f17e0","responseTime":30,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7c42ff50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7c43c2a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1555,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1555,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.732117,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1556,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"0729ed69-7f46-471b-812d-7dea56fe371e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.180497} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1132c4f2-e618-4e0a-93a9-5f78d499b532#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1132c4f2-e618-4e0a-93a9-5f78d499b532","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"afbe4af7-9810-44f1-af58-555df0166a8a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.1805704} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63db5fdd-d8c0-4c63-8990-86e6f607db5c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.1808348} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c42ff50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","object_type":"device","rebac_allow":false,"scope_allow":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":"7c42ff50-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4860a8f1-bb28-4cc7-a6e9-f63f09676c0d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.1839309} authorization-1 | {"level":"info","message":"POST /relations/update 200 30ms","method":"POST","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07","responseTime":30,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1556,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.19381,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c43c2a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","object_type":"device","rebac_allow":false,"scope_allow":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":"7c43c2a0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7c42ff50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e635e838-83e1-4448-8f31-7da286e83673/signaling 200 15ms","method":"POST","requestID":"7c42ff50-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7c43c2a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68/signaling 200 11ms","method":"POST","requestID":"7c43c2a0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7c460c90-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1216","request_time":"0.182","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} experiment-1 | {"level":"info","message":"POST /experiments? 201 176ms","method":"POST","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07","responseTime":176,"status":201,"url":"/experiments?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1557,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU","level":"info","message":"auth send jwt","requestID":"f476839020c4e7fb9c7e60fb3852ca08"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"55299434-276c-4897-b44f-09a7d148818e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.1977985} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"f476839020c4e7fb9c7e60fb3852ca08","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f476839020c4e7fb9c7e60fb3852ca08"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1557,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.53399,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c460c90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","object_type":"device","rebac_allow":false,"scope_allow":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":"7c460c90-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1558,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7c460c90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1558,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.944372,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} device-1 | {"level":"info","message":"POST /devices/e635e838-83e1-4448-8f31-7da286e83673/signaling 200 9ms","method":"POST","requestID":"7c460c90-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673/signaling"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f476839020c4e7fb9c7e60fb3852ca08","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"f476839020c4e7fb9c7e60fb3852ca08","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c47e150-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7c480860-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.788159438Z"}]},"request_id":"5e0635a9-976a-41ed-b4ba-ca2d4295b05a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.2069714} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"f476839020c4e7fb9c7e60fb3852ca08","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1559,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1559,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.863822,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1560,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1560,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.543342,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c47e150-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7c47e150-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c480860-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7c480860-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f476839020c4e7fb9c7e60fb3852ca08"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68? 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":"f476839020c4e7fb9c7e60fb3852ca08"} device-1 | {"level":"info","message":"GET /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68? 200 15ms","method":"GET","requestID":"f476839020c4e7fb9c7e60fb3852ca08","responseTime":15,"status":200,"url":"/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68?"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.788159438Z"}]},"request_id":"960228a5-1b22-429c-9cc5-8fc976b1744b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.2145698} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7c47e150-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.834079326Z"}]},"request_id":"18d5e580-6328-403f-a3d7-02ebd2eb3b8e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.215713} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7c480860-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU","level":"info","message":"auth send jwt","requestID":"e2fc07879378974371d1f0f35aca8422"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e2fc07879378974371d1f0f35aca8422","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c47e150-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68? 200 14ms","method":"GET","requestID":"7c47e150-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7c480860-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/e635e838-83e1-4448-8f31-7da286e83673? 200 14ms","method":"GET","requestID":"7c480860-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673?"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e2fc07879378974371d1f0f35aca8422"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Building connection plan","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} 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":"1b7e0f05-25d7-4f90-befe-c793e275a11d"},{"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":"e27c8074-e0b6-412d-b78b-36bce7317c00"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"72327833-60a9-48c8-9136-091471e6f16d"}]},"level":"info","message":"Built pairwise service configurations","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"7c4a7960-848f-11ef-8885-7d835fc08c91"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1561,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"7c4a7960-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"7c4a7960-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1561,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.747631,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e2fc07879378974371d1f0f35aca8422","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e2fc07879378974371d1f0f35aca8422","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/3cd1000c-0d09-4b9d-8f7e-7e026de9a0f1?id=7c2ffa68-05e9-49d8-af1b-f81c75b4fb04","ws://localhost/rooms/3cd1000c-0d09-4b9d-8f7e-7e026de9a0f1?id=82fe8712-7710-4658-ac59-06d3fd8f9694"]},"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/afdf1faa-4cfd-49ae-88bf-b34a463dec68"},{"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/e635e838-83e1-4448-8f31-7da286e83673"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7c4b15a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:24.834079326Z"}]},"request_id":"d80718ee-12e8-40d8-a67d-17afbea422b3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.2273889} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e2fc07879378974371d1f0f35aca8422","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1562,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1562,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.672571,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c4b15a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"7c4b15a0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e2fc07879378974371d1f0f35aca8422"} device-1 | {"level":"info","message":"GET /devices/e635e838-83e1-4448-8f31-7da286e83673? 200 12ms","method":"GET","requestID":"e2fc07879378974371d1f0f35aca8422","responseTime":12,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/e635e838-83e1-4448-8f31-7da286e83673? 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":"e2fc07879378974371d1f0f35aca8422"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"428d2cda-96f4-4c71-ab17-f501a6c8b721","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.2376196} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b2dbaec9-85e0-48fc-81d8-92430be5d66b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.237894} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"7c4b15a0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7c4b15a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7c4b15a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b'","requestID":"7c4b15a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b'","requestID":"7c4b15a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7c4b15a0-848f-11ef-9233-95baf63f17e0"} 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":"7c4b15a0-848f-11ef-9233-95baf63f17e0","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":"7c4b15a0-848f-11ef-9233-95baf63f17e0"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"7c510910-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"7c2ffa68-05e9-49d8-af1b-f81c75b4fb04\" in room \"http://localhost/rooms/3cd1000c-0d09-4b9d-8f7e-7e026de9a0f1\"","requestID":"7c510910-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"7c510910-848f-11ef-8885-7d835fc08c91"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b' to 'http://localhost/callbacks/experiment'"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"7c51a550-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"82fe8712-7710-4658-ac59-06d3fd8f9694\" in room \"http://localhost/rooms/3cd1000c-0d09-4b9d-8f7e-7e026de9a0f1\"","requestID":"7c51a550-848f-11ef-8885-7d835fc08c91"} device-1 | {"data":{"peerconnection":"346e1f37-6dad-4a69-ab8e-a19cc1cc514b","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"7c51a550-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"82fe8712-7710-4658-ac59-06d3fd8f9694\" in room \"http://localhost/rooms/3cd1000c-0d09-4b9d-8f7e-7e026de9a0f1\"","requestID":"7c51a550-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"5f9751426a82d67c5f29a2d2dd1ab553","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"5f9751426a82d67c5f29a2d2dd1ab553","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"82fe8712-7710-4658-ac59-06d3fd8f9694\" in room \"http://localhost/rooms/3cd1000c-0d09-4b9d-8f7e-7e026de9a0f1\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"82fe8712-7710-4658-ac59-06d3fd8f9694\" in room \"http://localhost/rooms/3cd1000c-0d09-4b9d-8f7e-7e026de9a0f1\""} 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/afdf1faa-4cfd-49ae-88bf-b34a463dec68"},{"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/e635e838-83e1-4448-8f31-7da286e83673"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b"}}},"level":"info","message":"received a callback","requestID":"5f9751426a82d67c5f29a2d2dd1ab553"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 8ms","method":"POST","requestID":"5f9751426a82d67c5f29a2d2dd1ab553","responseTime":8,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"5f9751426a82d67c5f29a2d2dd1ab553"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"346e1f37-6dad-4a69-ab8e-a19cc1cc514b","statusDeviceA":"connected","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"f4f7a804b66d0b20c8ab9dd0ad28cd07"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"67e38754fb9f5ff512cd7597c13cb4bf","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"67e38754fb9f5ff512cd7597c13cb4bf","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7c56d570-848f-11ef-9233-95baf63f17e0"} 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/afdf1faa-4cfd-49ae-88bf-b34a463dec68"},{"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/e635e838-83e1-4448-8f31-7da286e83673"}],"status":"new","type":"websocket","url":"http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b"}}},"level":"info","message":"received a callback","requestID":"67e38754fb9f5ff512cd7597c13cb4bf"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1563,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9f30dee1-b184-4f92-836b-3f235293378e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.3077743} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1563,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.383339,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"67e38754fb9f5ff512cd7597c13cb4bf","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"67e38754fb9f5ff512cd7597c13cb4bf"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c56d570-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7c56d570-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"346e1f37-6dad-4a69-ab8e-a19cc1cc514b","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7c56d570-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68/signaling 200 12ms","method":"POST","requestID":"7c56d570-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"a20643549c235fe39b132c8fd5caa9e8","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"a20643549c235fe39b132c8fd5caa9e8","responseTime":0,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7c58d140-848f-11ef-9233-95baf63f17e0"} 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/afdf1faa-4cfd-49ae-88bf-b34a463dec68"},{"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/e635e838-83e1-4448-8f31-7da286e83673"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b"}}},"level":"info","message":"received a callback","requestID":"a20643549c235fe39b132c8fd5caa9e8"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1564,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9c266bac-3390-4b11-99be-50642bf84998","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.3210146} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1564,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.404561,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"a20643549c235fe39b132c8fd5caa9e8","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"a20643549c235fe39b132c8fd5caa9e8"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c58d140-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","object_type":"device","rebac_allow":false,"scope_allow":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":"7c58d140-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"346e1f37-6dad-4a69-ab8e-a19cc1cc514b","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7c58d140-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e635e838-83e1-4448-8f31-7da286e83673/signaling 200 11ms","method":"POST","requestID":"7c58d140-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673/signaling"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9e364e29240822386b98a62656c80e65","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"9e364e29240822386b98a62656c80e65","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-status-changed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[{"busId":"gpio1","direction":"out","interfaceId":1,"interfaceType":"gpio","signals":{"gpio":"gpio1"}},{"busId":"gpio2","direction":"out","interfaceId":2,"interfaceType":"gpio","signals":{"gpio":"gpio2"}}],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["websocket"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68"},{"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/e635e838-83e1-4448-8f31-7da286e83673"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b"}}},"level":"info","message":"received a callback","requestID":"9e364e29240822386b98a62656c80e65"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"7c5b9060-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1565,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F346e1f37-6dad-4a69-ab8e-a19cc1cc514b","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc6df3f1-3946-466d-a68e-0215f0c2d10a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.3379903} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1565,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.114703,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c5b9060-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b","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":"7c5b9060-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"7c5b9060-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b 200 7ms","method":"GET","requestID":"7c5b9060-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"9e364e29240822386b98a62656c80e65","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.034","http_referrer":"","http_user_agent":"node-fetch","requestID":"9e364e29240822386b98a62656c80e65"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7c5faf10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1566,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e4faf8fd-42c3-466e-8d60-b1bb9893341b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.3663576} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1566,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.057315,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c5faf10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7c5faf10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7c5faf10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68/signaling 200 8ms","method":"POST","requestID":"7c5faf10-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7c6135b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1567,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a0f76cd2-2648-439c-a27c-173f26f7bd0c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.3755503} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1567,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.309348,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c6135b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7c6135b0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7c6135b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e635e838-83e1-4448-8f31-7da286e83673/signaling 200 8ms","method":"POST","requestID":"7c6135b0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU","level":"info","message":"auth send jwt","requestID":"bb8b10015cffc12134f2c9840916dda4"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"bb8b10015cffc12134f2c9840916dda4","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532","requestID":"bb8b10015cffc12134f2c9840916dda4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1568,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1568,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.646817,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"bb8b10015cffc12134f2c9840916dda4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"bb8b10015cffc12134f2c9840916dda4","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532","requestID":"bb8b10015cffc12134f2c9840916dda4"} experiment-1 | {"level":"info","message":"GET /experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532 200 9ms","method":"GET","requestID":"bb8b10015cffc12134f2c9840916dda4","responseTime":9,"status":200,"url":"/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532 HTTP/1.1","status": "200","body_bytes_sent":"1289","request_time":"0.012","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"bb8b10015cffc12134f2c9840916dda4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU","level":"info","message":"auth send jwt","requestID":"ef094949f005cd72d6e63be7ae3d8955"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"ef094949f005cd72d6e63be7ae3d8955","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532","requestID":"ef094949f005cd72d6e63be7ae3d8955"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1569,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1569,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.54773,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ef094949f005cd72d6e63be7ae3d8955","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ef094949f005cd72d6e63be7ae3d8955","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Attempting to finish experiment","requestID":"ef094949f005cd72d6e63be7ae3d8955"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7c663ec0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1570,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1570,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.654828,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c663ec0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"7c663ec0-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/3cd1000c-0d09-4b9d-8f7e-7e026de9a0f1?id=7c2ffa68-05e9-49d8-af1b-f81c75b4fb04 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.148","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"530166266731605d6f0b46f039d0f518"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"7c2ffa68-05e9-49d8-af1b-f81c75b4fb04\" in room \"http://localhost/rooms/3cd1000c-0d09-4b9d-8f7e-7e026de9a0f1\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"7c2ffa68-05e9-49d8-af1b-f81c75b4fb04\" from room \"http://localhost/rooms/3cd1000c-0d09-4b9d-8f7e-7e026de9a0f1\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"346e1f37-6dad-4a69-ab8e-a19cc1cc514b","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/3cd1000c-0d09-4b9d-8f7e-7e026de9a0f1?id=82fe8712-7710-4658-ac59-06d3fd8f9694 HTTP/1.1","status": "101","body_bytes_sent":"918","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":"da67923cd461c4fbfd818f1b824fac95"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"82fe8712-7710-4658-ac59-06d3fd8f9694\" in room \"http://localhost/rooms/3cd1000c-0d09-4b9d-8f7e-7e026de9a0f1\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"82fe8712-7710-4658-ac59-06d3fd8f9694\" from room \"http://localhost/rooms/3cd1000c-0d09-4b9d-8f7e-7e026de9a0f1\""} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b","device":"e635e838-83e1-4448-8f31-7da286e83673","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"7b43460e14ed56a40b85b7d084a9fa08","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"7b43460e14ed56a40b85b7d084a9fa08","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"0fff542c94bcf91256f875d6b69cf69a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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/afdf1faa-4cfd-49ae-88bf-b34a463dec68"},{"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/e635e838-83e1-4448-8f31-7da286e83673"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b"}}},"level":"info","message":"received a callback","requestID":"7b43460e14ed56a40b85b7d084a9fa08"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"0fff542c94bcf91256f875d6b69cf69a","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d119566a-c39d-4eca-8e09-c10aa3cc16cc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.4184341} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F346e1f37-6dad-4a69-ab8e-a19cc1cc514b': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F346e1f37-6dad-4a69-ab8e-a19cc1cc514b","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"e108e19a-bcb1-4890-b010-2c0b0fcfa38b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.4184635} 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/afdf1faa-4cfd-49ae-88bf-b34a463dec68"},{"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/e635e838-83e1-4448-8f31-7da286e83673"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b"}}},"level":"info","message":"received a callback","requestID":"0fff542c94bcf91256f875d6b69cf69a"} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"7c663ec0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"data":{"peerconnection":"346e1f37-6dad-4a69-ab8e-a19cc1cc514b","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7c663ec0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b 204 31ms","method":"DELETE","requestID":"7c663ec0-848f-11ef-9233-95baf63f17e0","responseTime":31,"status":204,"url":"/peerconnections/346e1f37-6dad-4a69-ab8e-a19cc1cc514b"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"},"level":"info","message":"Successfully finished experiment","requestID":"ef094949f005cd72d6e63be7ae3d8955"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7c6d91c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1571,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fafdf1faa-4cfd-49ae-88bf-b34a463dec68","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"61730ef9-549e-4c9f-9f63-94dc815c6566","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.4573002} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1571,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.546872,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c6d91c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7c6d91c0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7c6d91c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68/signaling 200 8ms","method":"POST","requestID":"7c6d91c0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/afdf1faa-4cfd-49ae-88bf-b34a463dec68/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7c6f1860-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1132c4f2-e618-4e0a-93a9-5f78d499b532': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F1132c4f2-e618-4e0a-93a9-5f78d499b532","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"f1f9633a-47eb-47fd-b3a1-27912daebf74","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.463167} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"511f7014-308c-4d9f-bd2b-866897c91a69","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.463513} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"ef094949f005cd72d6e63be7ae3d8955","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1572,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Fe635e838-83e1-4448-8f31-7da286e83673","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab116986-f1f7-4602-abcf-d25627639b36","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.4679275} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1572,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.745231,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c6f1860-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/e635e838-83e1-4448-8f31-7da286e83673","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7c6f1860-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7c6f1860-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/e635e838-83e1-4448-8f31-7da286e83673/signaling 200 10ms","method":"POST","requestID":"7c6f1860-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/e635e838-83e1-4448-8f31-7da286e83673/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532","requestID":"ef094949f005cd72d6e63be7ae3d8955"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532 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":"ef094949f005cd72d6e63be7ae3d8955"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +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.160","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"211c6b61cba20f4f3910bb786abf3b05"} experiment-1 | {"level":"info","message":"DELETE /experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532 204 133ms","method":"DELETE","requestID":"ef094949f005cd72d6e63be7ae3d8955","responseTime":133,"status":204,"url":"/experiments/1132c4f2-e618-4e0a-93a9-5f78d499b532"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"7b43460e14ed56a40b85b7d084a9fa08","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"7b43460e14ed56a40b85b7d084a9fa08"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 114ms","method":"POST","requestID":"0fff542c94bcf91256f875d6b69cf69a","responseTime":114,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.117","http_referrer":"","http_user_agent":"node-fetch","requestID":"0fff542c94bcf91256f875d6b69cf69a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU","level":"info","message":"auth send jwt","requestID":"ccaa325f2d1ae87a8885834e2ea840ee"} authentication-1 | {"level":"info","message":"GET /auth 200 5ms","method":"GET","requestID":"ccaa325f2d1ae87a8885834e2ea840ee","responseTime":5,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"ccaa325f2d1ae87a8885834e2ea840ee"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +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.663","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"97a9404c2f3e1f4f426ac58a6532ed7a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1573,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1573,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.9675,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ccaa325f2d1ae87a8885834e2ea840ee","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"ccaa325f2d1ae87a8885834e2ea840ee","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/afdf1faa-4cfd-49ae-88bf-b34a463dec68' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"9d6eb7bf-7e0e-4efd-8e19-810777a87bb6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.5594094} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ccaa325f2d1ae87a8885834e2ea840ee","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/e635e838-83e1-4448-8f31-7da286e83673' 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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b618b355-75c0-4d18-b789-f63c6c5f87fc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.5650048} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"ccaa325f2d1ae87a8885834e2ea840ee","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"b220777e-9521-452b-b8cf-b7fb4106c486","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.5745487} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"14e39bc7-35d8-4479-a722-8b5019a73949","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.5746427} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"ccaa325f2d1ae87a8885834e2ea840ee","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.574514871Z"}]},"request_id":"9bee8479-93de-48ba-b37e-89ca0ad248b2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.5788698} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ccaa325f2d1ae87a8885834e2ea840ee","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"ccaa325f2d1ae87a8885834e2ea840ee"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +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":"ccaa325f2d1ae87a8885834e2ea840ee"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"ccaa325f2d1ae87a8885834e2ea840ee","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU","level":"info","message":"auth send jwt","requestID":"c0d2fdb75ead92313baf431902b36a82"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c0d2fdb75ead92313baf431902b36a82","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"c0d2fdb75ead92313baf431902b36a82"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1574,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1574,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.756451,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:27Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c0d2fdb75ead92313baf431902b36a82","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293727,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyN30.P0HpOPVv3BFIGXQSZoZcG3cHojRU2SeOtTjsxwpu-IU"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c0d2fdb75ead92313baf431902b36a82","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"0e315861-5365-4502-a021-646758dd249d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.606644} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c0d2fdb75ead92313baf431902b36a82","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"63cace33-1397-4d98-8051-ac9f4b88209f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.6108146} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c0d2fdb75ead92313baf431902b36a82","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"0b37004d-e308-4943-a2f2-1229fba5d07a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.6204572} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"ff1efce7-a421-4dbf-8349-6646e3e19302","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.6205273} authorization-1 | {"level":"info","message":"POST /relations/update 200 11ms","method":"POST","requestID":"c0d2fdb75ead92313baf431902b36a82","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.620410377Z"}]},"request_id":"1c9d1b5d-6bf0-410e-b80c-d6c07917526b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293727.624215} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c0d2fdb75ead92313baf431902b36a82","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"c0d2fdb75ead92313baf431902b36a82"} gateway-1 | {"time_local":"07/Oct/2024:09:35:27 +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":"c0d2fdb75ead92313baf431902b36a82"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"c0d2fdb75ead92313baf431902b36a82","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc","level":"info","message":"auth send jwt","requestID":"c7300cb978c7b8bfdbab01efbdb18ca1"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c7300cb978c7b8bfdbab01efbdb18ca1","responseTime":3,"status":200,"url":"/auth"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc","level":"info","message":"auth send jwt","requestID":"4ec07f4088d23ee3663e932484848c39"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"4ec07f4088d23ee3663e932484848c39","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"c7300cb978c7b8bfdbab01efbdb18ca1"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"4ec07f4088d23ee3663e932484848c39"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1575,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1575,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.596014,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1576,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c7300cb978c7b8bfdbab01efbdb18ca1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c7300cb978c7b8bfdbab01efbdb18ca1","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1576,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.899977,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4ec07f4088d23ee3663e932484848c39","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"4ec07f4088d23ee3663e932484848c39","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.620410377Z"}]},"request_id":"cd11ead9-e7f1-4290-825c-3dbcde2aceaa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.1010115} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"c7300cb978c7b8bfdbab01efbdb18ca1","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.574514871Z"}]},"request_id":"33433660-0e2e-40d6-a79f-b7a1e7a4159f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.1014948} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4ec07f4088d23ee3663e932484848c39","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"55e787d3-5f45-4072-8186-0f878c4d672d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.1048138} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"c7300cb978c7b8bfdbab01efbdb18ca1","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"be90d2c3-82a3-4988-a674-1e9e45ffb169","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.1057708} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"4ec07f4088d23ee3663e932484848c39","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.574514871Z"}]},"request_id":"dc1c10f1-970d-42ec-a288-36c59c58713d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.1088688} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"4ec07f4088d23ee3663e932484848c39","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"4ec07f4088d23ee3663e932484848c39"} device-1 | {"level":"info","message":"PATCH /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a 200 19ms","method":"PATCH","requestID":"4ec07f4088d23ee3663e932484848c39","responseTime":19,"status":200,"url":"/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.024","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"4ec07f4088d23ee3663e932484848c39"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc","level":"info","message":"auth send jwt","requestID":"b308b32b818137bdbbbffca445bc723d"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b308b32b818137bdbbbffca445bc723d","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"b308b32b818137bdbbbffca445bc723d"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1577,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1577,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.617092,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b308b32b818137bdbbbffca445bc723d","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b308b32b818137bdbbbffca445bc723d","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.620410377Z"}]},"request_id":"a2076056-d015-4e74-8bbd-0dd3fdab8efb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.119281} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"c7300cb978c7b8bfdbab01efbdb18ca1","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"c7300cb978c7b8bfdbab01efbdb18ca1"} device-1 | {"level":"info","message":"PATCH /devices/72e12a85-412e-4ad8-85d1-8404d498d452 200 32ms","method":"PATCH","requestID":"c7300cb978c7b8bfdbab01efbdb18ca1","responseTime":32,"status":200,"url":"/devices/72e12a85-412e-4ad8-85d1-8404d498d452"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/72e12a85-412e-4ad8-85d1-8404d498d452 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"c7300cb978c7b8bfdbab01efbdb18ca1"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc","level":"info","message":"auth send jwt","requestID":"8edf1a28fc9e68e625a2bd833bd50f88"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"8edf1a28fc9e68e625a2bd833bd50f88","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"8edf1a28fc9e68e625a2bd833bd50f88"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1578,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1578,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.729742,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8edf1a28fc9e68e625a2bd833bd50f88","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8edf1a28fc9e68e625a2bd833bd50f88","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"b308b32b818137bdbbbffca445bc723d"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a/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.9","requestID":"b308b32b818137bdbbbffca445bc723d"} device-1 | {"level":"info","message":"POST /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a/websocket 200 19ms","method":"POST","requestID":"b308b32b818137bdbbbffca445bc723d","responseTime":19,"status":200,"url":"/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"8edf1a28fc9e68e625a2bd833bd50f88"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/72e12a85-412e-4ad8-85d1-8404d498d452/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.9","requestID":"8edf1a28fc9e68e625a2bd833bd50f88"} device-1 | {"level":"info","message":"POST /devices/72e12a85-412e-4ad8-85d1-8404d498d452/websocket 200 15ms","method":"POST","requestID":"8edf1a28fc9e68e625a2bd833bd50f88","responseTime":15,"status":200,"url":"/devices/72e12a85-412e-4ad8-85d1-8404d498d452/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc","level":"info","message":"auth send jwt","requestID":"7d22428607fc176a4de6e82cc22a6077"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7d22428607fc176a4de6e82cc22a6077","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7d22428607fc176a4de6e82cc22a6077"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1579,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1579,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.189907,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d22428607fc176a4de6e82cc22a6077","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7d22428607fc176a4de6e82cc22a6077","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.574514871Z"}]},"request_id":"d3b29d90-1774-48a7-98e2-7aac7db59893","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.1796727} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7d22428607fc176a4de6e82cc22a6077","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7d22428607fc176a4de6e82cc22a6077"} device-1 | {"level":"info","message":"GET /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a? 200 14ms","method":"GET","requestID":"7d22428607fc176a4de6e82cc22a6077","responseTime":14,"status":200,"url":"/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a? 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":"7d22428607fc176a4de6e82cc22a6077"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc","level":"info","message":"auth send jwt","requestID":"8e52c268efedc08183f1547c886d9d56"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8e52c268efedc08183f1547c886d9d56","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8e52c268efedc08183f1547c886d9d56"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1580,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1580,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.690288,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8e52c268efedc08183f1547c886d9d56","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8e52c268efedc08183f1547c886d9d56","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.620410377Z"}]},"request_id":"a3aca1ed-38ff-4219-99db-e8b8f7047893","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.199176} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8e52c268efedc08183f1547c886d9d56","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8e52c268efedc08183f1547c886d9d56"} device-1 | {"level":"info","message":"GET /devices/72e12a85-412e-4ad8-85d1-8404d498d452? 200 14ms","method":"GET","requestID":"8e52c268efedc08183f1547c886d9d56","responseTime":14,"status":200,"url":"/devices/72e12a85-412e-4ad8-85d1-8404d498d452?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/72e12a85-412e-4ad8-85d1-8404d498d452? 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":"8e52c268efedc08183f1547c886d9d56"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc","level":"info","message":"auth send jwt","requestID":"057e7769c7d31425deaf0a288ebd6868"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"057e7769c7d31425deaf0a288ebd6868","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"057e7769c7d31425deaf0a288ebd6868"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1581,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1581,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.021397,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"057e7769c7d31425deaf0a288ebd6868","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"057e7769c7d31425deaf0a288ebd6868","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Attempting to run experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Attempting to book experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Successfully booked experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7ce755a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7ce77cb0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1582,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1583,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1582,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.714946,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7ce755a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7ce755a0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1583,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.288585,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7ce77cb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7ce77cb0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.574514871Z"}]},"request_id":"d530eda6-9dee-48fb-b83c-e07624b1bca9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.2595656} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"7ce755a0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.620410377Z"}]},"request_id":"93f47da1-a869-47d8-88d0-e276f7acd0d3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.2600846} authorization-1 | {"level":"info","message":"POST /relations/query 200 1ms","method":"POST","requestID":"7ce77cb0-848f-11ef-9233-95baf63f17e0","responseTime":1,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7ce755a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a? 200 16ms","method":"GET","requestID":"7ce755a0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7ce77cb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/72e12a85-412e-4ad8-85d1-8404d498d452? 200 16ms","method":"GET","requestID":"7ce77cb0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/72e12a85-412e-4ad8-85d1-8404d498d452?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Setting up experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Successfully locked booking for experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Attempting to update booking for experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Successfully updated booking for experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Successfully set up experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7cf22b10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7cf25220-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7cf2a040-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Successfully running experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1584,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1584,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.81855,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1585,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1585,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.079883,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7cf22b10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7cf22b10-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7cf25220-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"7cf25220-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43384","level":"info","msg":"Received request.","req_id":1586,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:43384","level":"info","msg":"Sent response.","req_id":1586,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.340052,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"56592551-ae02-447f-96e5-5bbad01ef05f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.3329818} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.574514871Z"}]},"request_id":"9d141686-5a3b-45fb-a759-9df1e5b228a5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.335127} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7cf2a040-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","object_type":"device","rebac_allow":false,"scope_allow":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":"7cf2a040-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.620410377Z"}]},"request_id":"a6829e98-b856-42d6-a6bf-9a7053c99a86","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.3368828} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7cf22b10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"7cf25220-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7cf22b10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a? 200 20ms","method":"GET","requestID":"7cf22b10-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7cf2a040-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a/signaling 200 18ms","method":"POST","requestID":"7cf2a040-848f-11ef-9233-95baf63f17e0","responseTime":18,"status":200,"url":"/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7cf25220-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/72e12a85-412e-4ad8-85d1-8404d498d452? 200 21ms","method":"GET","requestID":"7cf25220-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/72e12a85-412e-4ad8-85d1-8404d498d452?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7cf5d490-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7cf622b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1587,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1588,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1587,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.366113,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3cecbfbb-ffda-4175-bafb-4c4d1ac12fe1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.3499873} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7cf5d490-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","object_type":"device","rebac_allow":false,"scope_allow":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":"7cf5d490-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1588,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.488962,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"cd6c40e9-62e7-43bc-a1c7-02f121621551","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.3515615} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3145c94c-a246-45e0-9bae-d962fcd997d4#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3145c94c-a246-45e0-9bae-d962fcd997d4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"158b9ad3-3e07-46db-b4f5-9b92ccd845d4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.3525355} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"16694731-8dfd-45a7-aea0-717ee5733a30","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.3532755} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7cf622b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","object_type":"device","rebac_allow":false,"scope_allow":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":"7cf622b0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7cf5d490-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/72e12a85-412e-4ad8-85d1-8404d498d452/signaling 200 10ms","method":"POST","requestID":"7cf5d490-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/72e12a85-412e-4ad8-85d1-8404d498d452/signaling"} authorization-1 | {"level":"info","message":"POST /relations/update 200 23ms","method":"POST","requestID":"057e7769c7d31425deaf0a288ebd6868","responseTime":23,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7cf622b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a/signaling 200 11ms","method":"POST","requestID":"7cf622b0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7cf84590-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1589,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"057e7769c7d31425deaf0a288ebd6868"} experiment-1 | {"level":"info","message":"POST /experiments? 201 155ms","method":"POST","requestID":"057e7769c7d31425deaf0a288ebd6868","responseTime":155,"status":201,"url":"/experiments?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"057e7769c7d31425deaf0a288ebd6868"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"dc504908-6440-4bba-811c-655ca46d06e2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.3661768} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1589,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.752432,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7cf84590-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7cf84590-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc","level":"info","message":"auth send jwt","requestID":"12977a3d6643e2f8f886d6fb964c54b3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7cf84590-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"12977a3d6643e2f8f886d6fb964c54b3","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"POST /devices/72e12a85-412e-4ad8-85d1-8404d498d452/signaling 200 9ms","method":"POST","requestID":"7cf84590-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/72e12a85-412e-4ad8-85d1-8404d498d452/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"12977a3d6643e2f8f886d6fb964c54b3"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7cf9f340-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7cfa1a50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1590,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1590,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.959175,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1591,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"12977a3d6643e2f8f886d6fb964c54b3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"12977a3d6643e2f8f886d6fb964c54b3","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1591,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.606609,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:43384","level":"info","msg":"Received request.","req_id":1592,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7cf9f340-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7cf9f340-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43384","level":"info","msg":"Sent response.","req_id":1592,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.366964,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7cfa1a50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7cfa1a50-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.574514871Z"}]},"request_id":"19d4c7c5-1225-41e2-8669-d224da9dc7ad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.3794887} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.574514871Z"}]},"request_id":"5b0f82af-360c-4f99-9c9e-6f638c069c33","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.380227} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"12977a3d6643e2f8f886d6fb964c54b3","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.620410377Z"}]},"request_id":"17ce0456-2c02-4a71-9c83-1a0c24b5e0af","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.3812456} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7cf9f340-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7cfa1a50-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"12977a3d6643e2f8f886d6fb964c54b3"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a? 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":"12977a3d6643e2f8f886d6fb964c54b3"} device-1 | {"level":"info","message":"GET /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a? 200 16ms","method":"GET","requestID":"12977a3d6643e2f8f886d6fb964c54b3","responseTime":16,"status":200,"url":"/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7cf9f340-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a? 200 16ms","method":"GET","requestID":"7cf9f340-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7cfa1a50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/72e12a85-412e-4ad8-85d1-8404d498d452? 200 16ms","method":"GET","requestID":"7cfa1a50-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/72e12a85-412e-4ad8-85d1-8404d498d452?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Building connection plan","requestID":"057e7769c7d31425deaf0a288ebd6868"} 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":"5bb42d80-11d1-4484-bf38-a3b216ee709f"},{"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":"6c248418-2b60-42d6-b6a7-cb27b2618793"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"db8a2466-6fa3-4661-a79f-00ab74a0da69"}]},"level":"info","message":"Built pairwise service configurations","requestID":"057e7769c7d31425deaf0a288ebd6868"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc","level":"info","message":"auth send jwt","requestID":"e0185ea3d6e53b300a805046580ad323"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"e0185ea3d6e53b300a805046580ad323","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"e0185ea3d6e53b300a805046580ad323"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"7cfd0080-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"7cfd0080-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"7cfd0080-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/a84257ae-5ec5-46cd-8eee-cf17c55e6135?id=f840c21c-66f4-4797-b1bb-c90810ea79f9","ws://localhost/rooms/a84257ae-5ec5-46cd-8eee-cf17c55e6135?id=1a77cb35-3eb3-40e4-b90b-05ed5bfc9956"]},"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/79d01124-28c1-4f12-a30b-1be0e8fca19a"},{"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/72e12a85-412e-4ad8-85d1-8404d498d452"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"057e7769c7d31425deaf0a288ebd6868"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1593,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1593,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.967136,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7cfd75b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e0185ea3d6e53b300a805046580ad323","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"e0185ea3d6e53b300a805046580ad323","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1594,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1594,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.629924,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7cfd75b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7cfd75b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:27.620410377Z"}]},"request_id":"c53fc6f0-b83d-4dd2-a792-a29917d55f79","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.3990057} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"e0185ea3d6e53b300a805046580ad323","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"e0185ea3d6e53b300a805046580ad323"} device-1 | {"level":"info","message":"GET /devices/72e12a85-412e-4ad8-85d1-8404d498d452? 200 12ms","method":"GET","requestID":"e0185ea3d6e53b300a805046580ad323","responseTime":12,"status":200,"url":"/devices/72e12a85-412e-4ad8-85d1-8404d498d452?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/72e12a85-412e-4ad8-85d1-8404d498d452? 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":"e0185ea3d6e53b300a805046580ad323"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"94231449-85e5-40e2-89cc-a359636a28e0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.4094884} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b333d44d-96ac-4f46-a2f8-089a749c80ad","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.4096487} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7cfd75b0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7cfd75b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7cfd75b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f'","requestID":"7cfd75b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f'","requestID":"7cfd75b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7cfd75b0-848f-11ef-9233-95baf63f17e0"} 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":"7cfd75b0-848f-11ef-9233-95baf63f17e0","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":"7cfd75b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8fb4e07c-7eeb-40ba-a103-f4dafe789d4f","statusDeviceA":"connecting","statusDeviceB":"new"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"7d02cce0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"f840c21c-66f4-4797-b1bb-c90810ea79f9\" in room \"http://localhost/rooms/a84257ae-5ec5-46cd-8eee-cf17c55e6135\"","requestID":"7d02cce0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"7d02cce0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"7d02f3f0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1a77cb35-3eb3-40e4-b90b-05ed5bfc9956\" in room \"http://localhost/rooms/a84257ae-5ec5-46cd-8eee-cf17c55e6135\"","requestID":"7d02f3f0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"7d02f3f0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1a77cb35-3eb3-40e4-b90b-05ed5bfc9956\" in room \"http://localhost/rooms/a84257ae-5ec5-46cd-8eee-cf17c55e6135\"","requestID":"7d02f3f0-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9c64488a94f4091f3e5695ec7e3aaaee","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 \"1a77cb35-3eb3-40e4-b90b-05ed5bfc9956\" in room \"http://localhost/rooms/a84257ae-5ec5-46cd-8eee-cf17c55e6135\""} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"9c64488a94f4091f3e5695ec7e3aaaee","responseTime":1,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1a77cb35-3eb3-40e4-b90b-05ed5bfc9956\" in room \"http://localhost/rooms/a84257ae-5ec5-46cd-8eee-cf17c55e6135\""} 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/79d01124-28c1-4f12-a30b-1be0e8fca19a"},{"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/72e12a85-412e-4ad8-85d1-8404d498d452"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f"}}},"level":"info","message":"received a callback","requestID":"9c64488a94f4091f3e5695ec7e3aaaee"} device-1 | {"data":{"peerconnection":"8fb4e07c-7eeb-40ba-a103-f4dafe789d4f","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 13ms","method":"POST","requestID":"9c64488a94f4091f3e5695ec7e3aaaee","responseTime":13,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.016","http_referrer":"","http_user_agent":"node-fetch","requestID":"9c64488a94f4091f3e5695ec7e3aaaee"} device-1 | {"data":{"peerconnection":"8fb4e07c-7eeb-40ba-a103-f4dafe789d4f","statusDeviceA":"connected","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"057e7769c7d31425deaf0a288ebd6868"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7d0787d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1595,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8fb4e07c-7eeb-40ba-a103-f4dafe789d4f","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2634edfb-e140-41fe-88fc-d609f3669d7c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.4650545} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"53a9fdfa37b3bedcb2577a87e42e0293","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:51800","level":"info","msg":"Sent response.","req_id":1595,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.40264,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"53a9fdfa37b3bedcb2577a87e42e0293","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d0787d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","object_type":"device","rebac_allow":false,"scope_allow":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":"7d0787d0-848f-11ef-9233-95baf63f17e0","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":["A1","A2","A3","A4","A5","A6","A7","A8","B1","B2","B3","B4","B5","B6","B7","B8","C1","C2","C3","C4","C5","C6","C7","C8","D1","D2","D3","D4","D5","D6","D7","D8","E1","E2","E3","E4","E5","E6","E7","E8","F1","F2","F3","F4","F5","F6","F7","F8","G1","G2","G3","G4","G5","G6","G7","G8","H1","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/79d01124-28c1-4f12-a30b-1be0e8fca19a"},{"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/72e12a85-412e-4ad8-85d1-8404d498d452"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f"}}},"level":"info","message":"received a callback","requestID":"53a9fdfa37b3bedcb2577a87e42e0293"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"7d090e70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1596,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7d0787d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a/signaling 200 13ms","method":"POST","requestID":"7d0787d0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8fb4e07c-7eeb-40ba-a103-f4dafe789d4f","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b7aa9c64-6344-4390-b38e-ffbff2c60e33","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.4753892} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1596,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.449145,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d090e70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f","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":"7d090e70-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7d09f8d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1597,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"7d090e70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f 200 8ms","method":"GET","requestID":"7d090e70-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"9143b41c-3d5f-450e-9a2a-80d04b560309","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.480845} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1597,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.433031,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d09f8d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","object_type":"device","rebac_allow":false,"scope_allow":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":"7d09f8d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7d09f8d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/72e12a85-412e-4ad8-85d1-8404d498d452/signaling 200 8ms","method":"POST","requestID":"7d09f8d0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/72e12a85-412e-4ad8-85d1-8404d498d452/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 30ms","method":"POST","requestID":"53a9fdfa37b3bedcb2577a87e42e0293","responseTime":30,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"53a9fdfa37b3bedcb2577a87e42e0293"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7d0d0610-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1598,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4556693d-0517-456a-80e2-03146afa109e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.5012348} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1598,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.413271,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d0d0610-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","object_type":"device","rebac_allow":false,"scope_allow":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":"7d0d0610-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7d0d0610-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a/signaling 200 7ms","method":"POST","requestID":"7d0d0610-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7d0e65a0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1599,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a7c045b8-c754-4ba6-9f22-7f2b72b4e676","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.5102654} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1599,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.174005,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d0e65a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","object_type":"device","rebac_allow":false,"scope_allow":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":"7d0e65a0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7d0e65a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/72e12a85-412e-4ad8-85d1-8404d498d452/signaling 200 7ms","method":"POST","requestID":"7d0e65a0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/72e12a85-412e-4ad8-85d1-8404d498d452/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc","level":"info","message":"auth send jwt","requestID":"4d2212bac36e411f699d3279ed96ad6a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4d2212bac36e411f699d3279ed96ad6a","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/3145c94c-a246-45e0-9bae-d962fcd997d4","requestID":"4d2212bac36e411f699d3279ed96ad6a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1600,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1600,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.857455,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4d2212bac36e411f699d3279ed96ad6a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4d2212bac36e411f699d3279ed96ad6a","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/3145c94c-a246-45e0-9bae-d962fcd997d4","requestID":"4d2212bac36e411f699d3279ed96ad6a"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/3145c94c-a246-45e0-9bae-d962fcd997d4 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.017","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d2212bac36e411f699d3279ed96ad6a"} experiment-1 | {"level":"info","message":"GET /experiments/3145c94c-a246-45e0-9bae-d962fcd997d4 200 12ms","method":"GET","requestID":"4d2212bac36e411f699d3279ed96ad6a","responseTime":12,"status":200,"url":"/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc","level":"info","message":"auth send jwt","requestID":"2f71079023a2526345937d4a5d9f547f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2f71079023a2526345937d4a5d9f547f","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/3145c94c-a246-45e0-9bae-d962fcd997d4","requestID":"2f71079023a2526345937d4a5d9f547f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1601,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1601,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.140703,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2f71079023a2526345937d4a5d9f547f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"2f71079023a2526345937d4a5d9f547f","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Attempting to finish experiment","requestID":"2f71079023a2526345937d4a5d9f547f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7d17b470-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1602,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1602,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.720668,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d17b470-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7d17b470-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a84257ae-5ec5-46cd-8eee-cf17c55e6135?id=f840c21c-66f4-4797-b1bb-c90810ea79f9 HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.148","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"02163ee16f6ccc3a80f433df6f34762e"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/a84257ae-5ec5-46cd-8eee-cf17c55e6135?id=1a77cb35-3eb3-40e4-b90b-05ed5bfc9956 HTTP/1.1","status": "101","body_bytes_sent":"458","request_time":"0.148","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"a7d6c9458c107987f0a1a5a81dea4384"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"f840c21c-66f4-4797-b1bb-c90810ea79f9\" in room \"http://localhost/rooms/a84257ae-5ec5-46cd-8eee-cf17c55e6135\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"f840c21c-66f4-4797-b1bb-c90810ea79f9\" from room \"http://localhost/rooms/a84257ae-5ec5-46cd-8eee-cf17c55e6135\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"1a77cb35-3eb3-40e4-b90b-05ed5bfc9956\" in room \"http://localhost/rooms/a84257ae-5ec5-46cd-8eee-cf17c55e6135\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"1a77cb35-3eb3-40e4-b90b-05ed5bfc9956\" from room \"http://localhost/rooms/a84257ae-5ec5-46cd-8eee-cf17c55e6135\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"8fb4e07c-7eeb-40ba-a103-f4dafe789d4f","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"8f7f8d0f582989844ff18470c223370f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8fb4e07c-7eeb-40ba-a103-f4dafe789d4f': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F8fb4e07c-7eeb-40ba-a103-f4dafe789d4f","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"a8d6c265-a24a-49cc-9707-e191e6fdadbd","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.5812466} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"8f7f8d0f582989844ff18470c223370f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"01d63c5c-decd-4034-b771-997d25e24618","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.5813727} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e73eeca4a9899b8ffebc213cec9e161a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 6ms","method":"POST","requestID":"7d17b470-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e73eeca4a9899b8ffebc213cec9e161a","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/79d01124-28c1-4f12-a30b-1be0e8fca19a"},{"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/72e12a85-412e-4ad8-85d1-8404d498d452"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f"}}},"level":"info","message":"received a callback","requestID":"8f7f8d0f582989844ff18470c223370f"} 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/79d01124-28c1-4f12-a30b-1be0e8fca19a"},{"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/72e12a85-412e-4ad8-85d1-8404d498d452"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f"}}},"level":"info","message":"received a callback","requestID":"e73eeca4a9899b8ffebc213cec9e161a"} device-1 | {"data":{"peerconnection":"8fb4e07c-7eeb-40ba-a103-f4dafe789d4f","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7d17b470-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f 204 33ms","method":"DELETE","requestID":"7d17b470-848f-11ef-9233-95baf63f17e0","responseTime":33,"status":204,"url":"/peerconnections/8fb4e07c-7eeb-40ba-a103-f4dafe789d4f"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"},"level":"info","message":"Successfully finished experiment","requestID":"2f71079023a2526345937d4a5d9f547f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7d1fcac0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1603,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F79d01124-28c1-4f12-a30b-1be0e8fca19a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c5b3e355-2228-4c26-b9fd-7ba6f19c6ef6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.6262028} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1603,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.714658,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d1fcac0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a","object_type":"device","rebac_allow":false,"scope_allow":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":"7d1fcac0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7d1fcac0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/79d01124-28c1-4f12-a30b-1be0e8fca19a/signaling 200 13ms","method":"POST","requestID":"7d1fcac0-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/79d01124-28c1-4f12-a30b-1be0e8fca19a/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3145c94c-a246-45e0-9bae-d962fcd997d4': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F3145c94c-a246-45e0-9bae-d962fcd997d4","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"12fb7f46-6046-4f63-b6f6-5de690405f7f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.6342552} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"78e79954-af92-4017-8d92-28c1fcbd3935","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.6346774} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"2f71079023a2526345937d4a5d9f547f","responseTime":18,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7d223bc0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1604,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F72e12a85-412e-4ad8-85d1-8404d498d452","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"21355837-2770-4b09-96fd-da7cf6f8a81b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.6427217} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1604,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.85802,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d223bc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/72e12a85-412e-4ad8-85d1-8404d498d452","object_type":"device","rebac_allow":false,"scope_allow":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":"7d223bc0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7d223bc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/72e12a85-412e-4ad8-85d1-8404d498d452/signaling 200 11ms","method":"POST","requestID":"7d223bc0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/72e12a85-412e-4ad8-85d1-8404d498d452/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/3145c94c-a246-45e0-9bae-d962fcd997d4","requestID":"2f71079023a2526345937d4a5d9f547f"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/3145c94c-a246-45e0-9bae-d962fcd997d4 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.145","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"2f71079023a2526345937d4a5d9f547f"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +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.562","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"eec9737f55eb6d924593c8d4ae727a18"} experiment-1 | {"level":"info","message":"DELETE /experiments/3145c94c-a246-45e0-9bae-d962fcd997d4 204 141ms","method":"DELETE","requestID":"2f71079023a2526345937d4a5d9f547f","responseTime":141,"status":204,"url":"/experiments/3145c94c-a246-45e0-9bae-d962fcd997d4"} gateway-1 | {"time_local":"07/Oct/2024:09:35:28 +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.553","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"b7b5102f9d77097c7236046b2d7acfa2"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"8f7f8d0f582989844ff18470c223370f","responseTime":117,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.121","http_referrer":"","http_user_agent":"node-fetch","requestID":"8f7f8d0f582989844ff18470c223370f"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 117ms","method":"POST","requestID":"e73eeca4a9899b8ffebc213cec9e161a","responseTime":117,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc","level":"info","message":"auth send jwt","requestID":"7c22d98e9d717deb18c2393483075856"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.122","http_referrer":"","http_user_agent":"node-fetch","requestID":"e73eeca4a9899b8ffebc213cec9e161a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"7c22d98e9d717deb18c2393483075856","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/72e12a85-412e-4ad8-85d1-8404d498d452' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"7c22d98e9d717deb18c2393483075856"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1605,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1605,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.802798,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7c22d98e9d717deb18c2393483075856","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7c22d98e9d717deb18c2393483075856","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/79d01124-28c1-4f12-a30b-1be0e8fca19a' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"de52279f-551b-4fb5-87c0-a782a4e9306d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.7278585} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7c22d98e9d717deb18c2393483075856","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"61d30f4e-3731-45d5-89c1-08e156ebd569","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.7339082} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7c22d98e9d717deb18c2393483075856","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"e6b27fd4-228d-444c-bdaa-96d554596a43","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.7440293} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"51969158-fd68-42f6-b7c2-a7a1082ebe8f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.7443104} authorization-1 | {"level":"info","message":"POST /relations/update 200 12ms","method":"POST","requestID":"7c22d98e9d717deb18c2393483075856","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.743995019Z"}]},"request_id":"3ec14937-847a-4991-a05a-8b0159ba77c2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.7487466} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7c22d98e9d717deb18c2393483075856","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"7c22d98e9d717deb18c2393483075856"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.051","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"7c22d98e9d717deb18c2393483075856"} device-1 | {"level":"info","message":"POST /devices? 201 45ms","method":"POST","requestID":"7c22d98e9d717deb18c2393483075856","responseTime":45,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc","level":"info","message":"auth send jwt","requestID":"1ed703fe222b9e8a15b7e53803f49ecd"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"1ed703fe222b9e8a15b7e53803f49ecd","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"1ed703fe222b9e8a15b7e53803f49ecd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1606,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1606,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.950974,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:28Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"1ed703fe222b9e8a15b7e53803f49ecd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293728,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOH0.XtjWWLQO9cM1lOArVGEOPBqVIoJ5r9gy1MCjsmRBQkc"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"1ed703fe222b9e8a15b7e53803f49ecd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4a0b234f-c0b9-4bf3-b1b3-8f6d85ad2696","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.7714226} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1ed703fe222b9e8a15b7e53803f49ecd","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"70dbff26-a5a1-4c9d-bed7-cdb2837f52a2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.7760146} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"1ed703fe222b9e8a15b7e53803f49ecd","responseTime":3,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"ecebe522-9748-4a68-ae0a-218c9a1876fa","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.7925618} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"dfbe54ba-bd45-46f9-aef1-407dbb3ec76a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.7926426} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"1ed703fe222b9e8a15b7e53803f49ecd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.792504733Z"}]},"request_id":"34af70b4-d448-46a9-91c4-5c671acfac4b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293728.7975273} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"1ed703fe222b9e8a15b7e53803f49ecd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"1ed703fe222b9e8a15b7e53803f49ecd"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.048","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"1ed703fe222b9e8a15b7e53803f49ecd"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"1ed703fe222b9e8a15b7e53803f49ecd","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI","level":"info","message":"auth send jwt","requestID":"ce45889a2d57e18d873b27fc00db07c9"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ce45889a2d57e18d873b27fc00db07c9","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"ce45889a2d57e18d873b27fc00db07c9"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI","level":"info","message":"auth send jwt","requestID":"e39707878d24ea52acdcb8714c46d817"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e39707878d24ea52acdcb8714c46d817","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"e39707878d24ea52acdcb8714c46d817"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1607,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1607,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.596317,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1608,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ce45889a2d57e18d873b27fc00db07c9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ce45889a2d57e18d873b27fc00db07c9","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1608,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.592201,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e39707878d24ea52acdcb8714c46d817","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"e39707878d24ea52acdcb8714c46d817","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.743995019Z"}]},"request_id":"9aced384-4788-41b0-b1eb-c598ecc3032f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.2735765} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ce45889a2d57e18d873b27fc00db07c9","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.792504733Z"}]},"request_id":"f3471656-a743-4203-87fd-fabc975510c1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.2740777} authorization-1 | {"level":"info","message":"POST /relations/query 200 1ms","method":"POST","requestID":"e39707878d24ea52acdcb8714c46d817","responseTime":1,"status":200,"url":"/relations/query"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"9d14d046-a333-4ad2-9dff-eaa202e71fa3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.2778578} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"ce45889a2d57e18d873b27fc00db07c9","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"74f83179-0137-4280-8c19-ec5ad1df0ba0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.278676} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"e39707878d24ea52acdcb8714c46d817","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.792504733Z"}]},"request_id":"cc4dd7f9-51ee-4d1b-b6be-299a4082a2be","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.2813814} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"e39707878d24ea52acdcb8714c46d817","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"e39707878d24ea52acdcb8714c46d817"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511 HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.022","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"e39707878d24ea52acdcb8714c46d817"} device-1 | {"level":"info","message":"PATCH /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511 200 18ms","method":"PATCH","requestID":"e39707878d24ea52acdcb8714c46d817","responseTime":18,"status":200,"url":"/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI","level":"info","message":"auth send jwt","requestID":"2c634206207ab8b8ccf5f55b8b2a094b"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"2c634206207ab8b8ccf5f55b8b2a094b","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"2c634206207ab8b8ccf5f55b8b2a094b"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1609,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1609,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.638599,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2c634206207ab8b8ccf5f55b8b2a094b","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2c634206207ab8b8ccf5f55b8b2a094b","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.743995019Z"}]},"request_id":"2dd81f3b-7e5a-4ca5-9062-5e6e71f81b5f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.291637} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"ce45889a2d57e18d873b27fc00db07c9","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"ce45889a2d57e18d873b27fc00db07c9"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf HTTP/1.1","status": "200","body_bytes_sent":"1340","request_time":"0.035","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"ce45889a2d57e18d873b27fc00db07c9"} device-1 | {"level":"info","message":"PATCH /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf 200 30ms","method":"PATCH","requestID":"ce45889a2d57e18d873b27fc00db07c9","responseTime":30,"status":200,"url":"/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI","level":"info","message":"auth send jwt","requestID":"bbdf7802ca01c75e642501f941178e87"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bbdf7802ca01c75e642501f941178e87","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"bbdf7802ca01c75e642501f941178e87"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1610,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1610,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.652945,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"bbdf7802ca01c75e642501f941178e87","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"bbdf7802ca01c75e642501f941178e87","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"2c634206207ab8b8ccf5f55b8b2a094b"} device-1 | {"level":"info","message":"POST /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511/websocket 200 17ms","method":"POST","requestID":"2c634206207ab8b8ccf5f55b8b2a094b","responseTime":17,"status":200,"url":"/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511/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.9","requestID":"2c634206207ab8b8ccf5f55b8b2a094b"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"bbdf7802ca01c75e642501f941178e87"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.017","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"bbdf7802ca01c75e642501f941178e87"} device-1 | {"level":"info","message":"POST /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf/websocket 200 13ms","method":"POST","requestID":"bbdf7802ca01c75e642501f941178e87","responseTime":13,"status":200,"url":"/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf' connected"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI","level":"info","message":"auth send jwt","requestID":"2dd71860b1ec7e20e179a0e8ed8c5049"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"2dd71860b1ec7e20e179a0e8ed8c5049","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"2dd71860b1ec7e20e179a0e8ed8c5049"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1611,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1611,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.832001,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"2dd71860b1ec7e20e179a0e8ed8c5049","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"2dd71860b1ec7e20e179a0e8ed8c5049","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.743995019Z"}]},"request_id":"7277ad68-9ae2-40df-b2e8-7ead7c4d10b0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.3458316} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"2dd71860b1ec7e20e179a0e8ed8c5049","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"2dd71860b1ec7e20e179a0e8ed8c5049"} device-1 | {"level":"info","message":"GET /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf? 200 10ms","method":"GET","requestID":"2dd71860b1ec7e20e179a0e8ed8c5049","responseTime":10,"status":200,"url":"/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf? 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":"2dd71860b1ec7e20e179a0e8ed8c5049"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI","level":"info","message":"auth send jwt","requestID":"d3efcc2f0f5f44d9328b8f30e76fbbfd"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d3efcc2f0f5f44d9328b8f30e76fbbfd","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"d3efcc2f0f5f44d9328b8f30e76fbbfd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1612,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1612,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.781058,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"d3efcc2f0f5f44d9328b8f30e76fbbfd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"d3efcc2f0f5f44d9328b8f30e76fbbfd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.792504733Z"}]},"request_id":"ffd68bb7-3565-4dec-b6e2-8d6c993ed826","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.3604043} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"d3efcc2f0f5f44d9328b8f30e76fbbfd","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"d3efcc2f0f5f44d9328b8f30e76fbbfd"} device-1 | {"level":"info","message":"GET /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511? 200 12ms","method":"GET","requestID":"d3efcc2f0f5f44d9328b8f30e76fbbfd","responseTime":12,"status":200,"url":"/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511? 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":"d3efcc2f0f5f44d9328b8f30e76fbbfd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI","level":"info","message":"auth send jwt","requestID":"eb403f62937c023501496a84b20b6b73"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"eb403f62937c023501496a84b20b6b73","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"eb403f62937c023501496a84b20b6b73"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1613,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1613,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.101501,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"eb403f62937c023501496a84b20b6b73","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"eb403f62937c023501496a84b20b6b73","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Attempting to run experiment","requestID":"eb403f62937c023501496a84b20b6b73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Attempting to book experiment","requestID":"eb403f62937c023501496a84b20b6b73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Successfully booked experiment","requestID":"eb403f62937c023501496a84b20b6b73"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7d98a440-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7d98f260-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1614,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1614,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.155991,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1615,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d98a440-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7d98a440-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1615,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.021722,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7d98f260-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7d98f260-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.743995019Z"}]},"request_id":"ac076e1a-4e3a-4874-8fe2-e7e412583341","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.4230835} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7d98a440-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.792504733Z"}]},"request_id":"f68d3f90-9474-4bbd-a755-db02eb87da91","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.4243028} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7d98f260-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7d98f260-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511? 200 16ms","method":"GET","requestID":"7d98f260-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7d98a440-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf? 200 20ms","method":"GET","requestID":"7d98a440-848f-11ef-9233-95baf63f17e0","responseTime":20,"status":200,"url":"/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Setting up experiment","requestID":"eb403f62937c023501496a84b20b6b73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"eb403f62937c023501496a84b20b6b73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Successfully locked booking for experiment","requestID":"eb403f62937c023501496a84b20b6b73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"eb403f62937c023501496a84b20b6b73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"eb403f62937c023501496a84b20b6b73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Attempting to update booking for experiment","requestID":"eb403f62937c023501496a84b20b6b73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Successfully updated booking for experiment","requestID":"eb403f62937c023501496a84b20b6b73"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Successfully set up experiment","requestID":"eb403f62937c023501496a84b20b6b73"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7da3a0c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7da3eee0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7da415f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1616,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1616,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.948383,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7da3a0c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Successfully running experiment","requestID":"eb403f62937c023501496a84b20b6b73"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7da3a0c0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1617,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1617,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.714537,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7da3eee0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"7da3eee0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1618,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1618,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.3056,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"8537d6b6-e888-4dcf-ab5e-8ad6d23cf582","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.495165} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7da415f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","object_type":"device","rebac_allow":false,"scope_allow":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":"7da415f0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.743995019Z"}]},"request_id":"8377a921-591c-4849-894d-07e643e568ee","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.4986398} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.792504733Z"}]},"request_id":"c40723f2-05e9-4d8f-a374-18bb5e0784d2","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.5007114} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"7da3a0c0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/relations/query"} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"7da3eee0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7da415f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf/signaling 200 21ms","method":"POST","requestID":"7da415f0-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7da3a0c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf? 200 26ms","method":"GET","requestID":"7da3a0c0-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7da3eee0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511? 200 25ms","method":"GET","requestID":"7da3eee0-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7da7e680-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7da85bb0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9fdea069-8293-48fe-8076-df85fb2a7c41#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9fdea069-8293-48fe-8076-df85fb2a7c41","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"f72c6874-5ecc-4ee3-935f-044405951e77","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.5164938} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4872b856-be6a-42be-89d7-3ed2bf49a41b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.5166228} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"eb403f62937c023501496a84b20b6b73","responseTime":26,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1619,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1620,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"c7c0e5fd-9c2e-4939-a5d5-be06da6ed747","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.5197382} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f402b3d9-43b1-4674-8b49-c6be35c4d12c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.5211256} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1619,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.765123,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1620,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.705908,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7da7e680-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","object_type":"device","rebac_allow":false,"scope_allow":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":"7da7e680-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7da85bb0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","object_type":"device","rebac_allow":false,"scope_allow":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":"7da85bb0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"eb403f62937c023501496a84b20b6b73"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1220","request_time":"0.162","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"eb403f62937c023501496a84b20b6b73"} experiment-1 | {"level":"info","message":"POST /experiments? 201 157ms","method":"POST","requestID":"eb403f62937c023501496a84b20b6b73","responseTime":157,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7da7e680-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511/signaling 200 19ms","method":"POST","requestID":"7da7e680-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7da85bb0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf/signaling 200 17ms","method":"POST","requestID":"7da85bb0-848f-11ef-9233-95baf63f17e0","responseTime":17,"status":200,"url":"/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI","level":"info","message":"auth send jwt","requestID":"aeee86b48bf3a7f75ac17d97774f0b1e"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aeee86b48bf3a7f75ac17d97774f0b1e","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7dab41e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aeee86b48bf3a7f75ac17d97774f0b1e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1621,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1622,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"47e2dfdb-86fd-4bb9-893a-bfb8ec0c597a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.5394166} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1622,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.04079,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"aeee86b48bf3a7f75ac17d97774f0b1e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"aeee86b48bf3a7f75ac17d97774f0b1e","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1621,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.542608,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7dab41e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7dab41e0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7dab41e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.743995019Z"}]},"request_id":"ef0f6e28-2177-4d82-baea-1a8698025e52","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.54364} device-1 | {"level":"info","message":"POST /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511/signaling 200 10ms","method":"POST","requestID":"7dab41e0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511/signaling"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"aeee86b48bf3a7f75ac17d97774f0b1e","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"eb403f62937c023501496a84b20b6b73"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7dad16a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7dad3db0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aeee86b48bf3a7f75ac17d97774f0b1e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1623,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1623,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.700337,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1624,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} device-1 | {"level":"info","message":"GET /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf? 200 13ms","method":"GET","requestID":"aeee86b48bf3a7f75ac17d97774f0b1e","responseTime":13,"status":200,"url":"/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf? 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":"aeee86b48bf3a7f75ac17d97774f0b1e"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7dad16a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7dad16a0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1624,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.807375,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7dad3db0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7dad3db0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI","level":"info","message":"auth send jwt","requestID":"145ecb2f34b6948f3e254f6ee5585705"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"145ecb2f34b6948f3e254f6ee5585705","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.743995019Z"}]},"request_id":"3e67be43-a1a9-4d8f-8a08-bbb64af522e8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.5539598} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"145ecb2f34b6948f3e254f6ee5585705"} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7dad16a0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.792504733Z"}]},"request_id":"6f3d4ac2-f48c-4c32-8e2b-9bc2cf4c8deb","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.5550787} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7dad3db0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1625,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1625,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.815966,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"145ecb2f34b6948f3e254f6ee5585705","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"145ecb2f34b6948f3e254f6ee5585705","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7dad16a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf? 200 14ms","method":"GET","requestID":"7dad16a0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7dad3db0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511? 200 14ms","method":"GET","requestID":"7dad3db0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Building connection plan","requestID":"eb403f62937c023501496a84b20b6b73"} 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":"96c7f010-0e73-4a9c-8c53-8ce70ba6d26a"},{"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":"3cbca1fd-d468-4183-b1da-bc960e6152eb"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"345d6bf1-ff25-4b18-a836-eaaec2552f8e"}]},"level":"info","message":"Built pairwise service configurations","requestID":"eb403f62937c023501496a84b20b6b73"} forwarding-1 | {"level":"info","message":"postRooms called","requestID":"7dafd5c0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"postRooms succeeded","requestID":"7dafd5c0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"POST /rooms 201 1ms","method":"POST","requestID":"7dafd5c0-848f-11ef-8885-7d835fc08c91","responseTime":1,"status":201,"url":"/rooms"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:28.792504733Z"}]},"request_id":"4e2fa94c-d29c-4ce0-84a5-34ce410d3a54","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.565073} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"145ecb2f34b6948f3e254f6ee5585705","responseTime":3,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"connectionPlan":[{"configuration":{"webSocketUrls":["ws://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08?id=23850c5a-030b-4589-8644-3713ba700e6a","ws://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08?id=1eca06c7-17cd-402f-bb2a-59ca55c227c3"]},"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/9aa4f97b-378e-4982-812e-6cc4c1184abf"},{"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/26fc10a3-9a17-44bf-84cb-17e7f787a511"}],"type":"websocket"}]},"level":"info","message":"Built connection plan","requestID":"eb403f62937c023501496a84b20b6b73"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7db07200-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"145ecb2f34b6948f3e254f6ee5585705"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1626,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511? 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":"145ecb2f34b6948f3e254f6ee5585705"} device-1 | {"level":"info","message":"GET /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511? 200 15ms","method":"GET","requestID":"145ecb2f34b6948f3e254f6ee5585705","responseTime":15,"status":200,"url":"/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1626,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.776424,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7db07200-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7db07200-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"796bc47e-3c57-485b-b65b-ebd2732c9e00","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.5783224} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f614fb66-ed83-4a1f-8db2-83f221f02db5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.5786014} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7db07200-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7db07200-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7db07200-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a'","requestID":"7db07200-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a'","requestID":"7db07200-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7db07200-848f-11ef-9233-95baf63f17e0"} 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":"7db07200-848f-11ef-9233-95baf63f17e0","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":"7db07200-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"31df4a83-ef25-4768-bd4d-b133fc67955a","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} forwarding-1 | {"level":"info","message":"A new connection has been established!","requestID":"7db505e0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1eca06c7-17cd-402f-bb2a-59ca55c227c3\" in room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\"","requestID":"7db505e0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"7db505e0-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"cbe83b256cdded195de277b14c45258a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"7db52cf0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"23850c5a-030b-4589-8644-3713ba700e6a\" in room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\"","requestID":"7db52cf0-848f-11ef-8885-7d835fc08c91"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"cbe83b256cdded195de277b14c45258a","responseTime":0,"status":200,"url":"/auth"} forwarding-1 | {"level":"info","message":"The newly established connection was handled successfully!","requestID":"7db52cf0-848f-11ef-8885-7d835fc08c91"} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1eca06c7-17cd-402f-bb2a-59ca55c227c3\" in room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1eca06c7-17cd-402f-bb2a-59ca55c227c3\" in room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1eca06c7-17cd-402f-bb2a-59ca55c227c3\" in room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1eca06c7-17cd-402f-bb2a-59ca55c227c3\" in room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1eca06c7-17cd-402f-bb2a-59ca55c227c3\" in room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1eca06c7-17cd-402f-bb2a-59ca55c227c3\" in room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\""} forwarding-1 | {"level":"info","message":"Starting forwarding-queue for participant \"1eca06c7-17cd-402f-bb2a-59ca55c227c3\" in room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\""} forwarding-1 | {"level":"info","message":"Waiting for new messages in forwarding-queue for participant \"1eca06c7-17cd-402f-bb2a-59ca55c227c3\" in room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\""} 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/9aa4f97b-378e-4982-812e-6cc4c1184abf"},{"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/26fc10a3-9a17-44bf-84cb-17e7f787a511"}],"status":"connecting","type":"websocket","url":"http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a"}}},"level":"info","message":"received a callback","requestID":"cbe83b256cdded195de277b14c45258a"} device-1 | {"data":{"peerconnection":"31df4a83-ef25-4768-bd4d-b133fc67955a","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 12ms","method":"POST","requestID":"cbe83b256cdded195de277b14c45258a","responseTime":12,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.017","http_referrer":"","http_user_agent":"node-fetch","requestID":"cbe83b256cdded195de277b14c45258a"} device-1 | {"data":{"peerconnection":"31df4a83-ef25-4768-bd4d-b133fc67955a","statusDeviceA":"connecting","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"eb403f62937c023501496a84b20b6b73"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7dba5d10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"31df4a83-ef25-4768-bd4d-b133fc67955a","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1627,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"beaf391f272879a85f87082f2bf08b6a","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"beaf391f272879a85f87082f2bf08b6a","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"27de9726-54f5-4f20-8530-4a4bda798eb7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.637899} 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/9aa4f97b-378e-4982-812e-6cc4c1184abf"},{"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/26fc10a3-9a17-44bf-84cb-17e7f787a511"}],"status":"connected","type":"websocket","url":"http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a"}}},"level":"info","message":"received a callback","requestID":"beaf391f272879a85f87082f2bf08b6a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1627,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.307913,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7dba5d10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7dba5d10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"7dbbe3b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1628,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7dba5d10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf/signaling 200 14ms","method":"POST","requestID":"7dba5d10-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf/signaling"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F31df4a83-ef25-4768-bd4d-b133fc67955a","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"992fa286-6aa4-4cd5-a59b-e2a94f200e0f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.647032} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1628,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.471671,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7dbbe3b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a","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":"7dbbe3b0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7dbcce10-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1629,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"7dbbe3b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a 200 8ms","method":"GET","requestID":"7dbbe3b0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"107cc2bb-6047-42e7-a68e-e56d3f9b0711","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.6526134} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1629,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.185644,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7dbcce10-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7dbcce10-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7dbcce10-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511/signaling 200 7ms","method":"POST","requestID":"7dbcce10-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511/signaling"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 27ms","method":"POST","requestID":"beaf391f272879a85f87082f2bf08b6a","responseTime":27,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.031","http_referrer":"","http_user_agent":"node-fetch","requestID":"beaf391f272879a85f87082f2bf08b6a"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7dbf6620-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1630,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f9ef1656-b2ba-4bf9-89a4-f292b7498827","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.6707368} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1630,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.550098,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7dbf6620-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"7dbf6620-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7dbf6620-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf/signaling 200 8ms","method":"POST","requestID":"7dbf6620-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7dc0ecc0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1631,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"d7382f42-8eb1-4bcc-8b29-f71375d8ad73","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.6795425} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1631,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.169097,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7dc0ecc0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","object_type":"device","rebac_allow":false,"scope_allow":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":"7dc0ecc0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7dc0ecc0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511/signaling 200 7ms","method":"POST","requestID":"7dc0ecc0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI","level":"info","message":"auth send jwt","requestID":"c69bb9ba853330bbcc5588ec4a3a5dfd"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"c69bb9ba853330bbcc5588ec4a3a5dfd","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/9fdea069-8293-48fe-8076-df85fb2a7c41","requestID":"c69bb9ba853330bbcc5588ec4a3a5dfd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1632,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1632,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":1.094761,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c69bb9ba853330bbcc5588ec4a3a5dfd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"c69bb9ba853330bbcc5588ec4a3a5dfd","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/9fdea069-8293-48fe-8076-df85fb2a7c41","requestID":"c69bb9ba853330bbcc5588ec4a3a5dfd"} experiment-1 | {"level":"info","message":"GET /experiments/9fdea069-8293-48fe-8076-df85fb2a7c41 200 10ms","method":"GET","requestID":"c69bb9ba853330bbcc5588ec4a3a5dfd","responseTime":10,"status":200,"url":"/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/9fdea069-8293-48fe-8076-df85fb2a7c41 HTTP/1.1","status": "200","body_bytes_sent":"1293","request_time":"0.014","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"c69bb9ba853330bbcc5588ec4a3a5dfd"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI","level":"info","message":"auth send jwt","requestID":"eeb346059aed13a6c5ef120629949df5"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"eeb346059aed13a6c5ef120629949df5","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/9fdea069-8293-48fe-8076-df85fb2a7c41","requestID":"eeb346059aed13a6c5ef120629949df5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1633,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1633,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.651902,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"eeb346059aed13a6c5ef120629949df5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"eeb346059aed13a6c5ef120629949df5","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Attempting to finish experiment","requestID":"eeb346059aed13a6c5ef120629949df5"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7dc99f50-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1634,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1634,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.733246,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7dc99f50-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7dc99f50-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/382687a9-6082-4364-a566-12960f8b2f08?id=23850c5a-030b-4589-8644-3713ba700e6a HTTP/1.1","status": "101","body_bytes_sent":"0","request_time":"0.147","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"8ec47f51574f4f6f738b3b1ff7df5190"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /rooms/382687a9-6082-4364-a566-12960f8b2f08?id=1eca06c7-17cd-402f-bb2a-59ca55c227c3 HTTP/1.1","status": "101","body_bytes_sent":"916","request_time":"0.148","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"150879f010d5d69ac74baeb4a637f68c"} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"23850c5a-030b-4589-8644-3713ba700e6a\" in room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"23850c5a-030b-4589-8644-3713ba700e6a\" from room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\""} forwarding-1 | {"level":"info","message":"Stopping forwarding-queue for participant \"1eca06c7-17cd-402f-bb2a-59ca55c227c3\" in room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\""} forwarding-1 | {"level":"info","message":"websocket connection closed for participant \"1eca06c7-17cd-402f-bb2a-59ca55c227c3\" from room \"http://localhost/rooms/382687a9-6082-4364-a566-12960f8b2f08\""} device-1 | {"level":"info","message":"Sending status-changed-callback for peerconnection 'http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"31df4a83-ef25-4768-bd4d-b133fc67955a","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"d45fb34036718302bb85518cd386265b","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F31df4a83-ef25-4768-bd4d-b133fc67955a': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F31df4a83-ef25-4768-bd4d-b133fc67955a","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"35a6abdc-8aed-4bdd-80b6-7c4f88f97829","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.7483332} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"d45fb34036718302bb85518cd386265b","responseTime":2,"status":200,"url":"/auth"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"50ee3b12-f3ea-4e8c-8c69-4c059437a99e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.7487338} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"13df6347c8f3840b934c4756bd0d61cb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"13df6347c8f3840b934c4756bd0d61cb","responseTime":1,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 6ms","method":"POST","requestID":"7dc99f50-848f-11ef-9233-95baf63f17e0","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":"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/9aa4f97b-378e-4982-812e-6cc4c1184abf"},{"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/26fc10a3-9a17-44bf-84cb-17e7f787a511"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a"}}},"level":"info","message":"received a callback","requestID":"d45fb34036718302bb85518cd386265b"} 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/9aa4f97b-378e-4982-812e-6cc4c1184abf"},{"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/26fc10a3-9a17-44bf-84cb-17e7f787a511"}],"status":"closed","type":"websocket","url":"http://localhost/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a"}}},"level":"info","message":"received a callback","requestID":"13df6347c8f3840b934c4756bd0d61cb"} device-1 | {"data":{"peerconnection":"31df4a83-ef25-4768-bd4d-b133fc67955a","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7dc99f50-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a 204 33ms","method":"DELETE","requestID":"7dc99f50-848f-11ef-9233-95baf63f17e0","responseTime":33,"status":204,"url":"/peerconnections/31df4a83-ef25-4768-bd4d-b133fc67955a"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"},"level":"info","message":"Successfully finished experiment","requestID":"eeb346059aed13a6c5ef120629949df5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7dd18e90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1635,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F9aa4f97b-378e-4982-812e-6cc4c1184abf","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"63cf66b1-69fe-4805-9044-4b9d2447c14a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.7902968} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1635,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.066272,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7dd18e90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf","object_type":"device","rebac_allow":false,"scope_allow":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":"7dd18e90-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7dd18e90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/9aa4f97b-378e-4982-812e-6cc4c1184abf/signaling 200 9ms","method":"POST","requestID":"7dd18e90-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/9aa4f97b-378e-4982-812e-6cc4c1184abf/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7dd36350-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9fdea069-8293-48fe-8076-df85fb2a7c41': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F9fdea069-8293-48fe-8076-df85fb2a7c41","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"8fd08373-141e-401a-a79b-30d25b968957","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.7979608} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"73e91050-273e-4027-bd03-a43c3bf39c95","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.798302} authorization-1 | {"level":"info","message":"POST /relations/update 200 18ms","method":"POST","requestID":"eeb346059aed13a6c5ef120629949df5","responseTime":18,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1636,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F26fc10a3-9a17-44bf-84cb-17e7f787a511","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"a8bb71b4-8a5d-4fd7-8386-33b5956ebf46","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.8038201} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1636,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.730473,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7dd36350-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511","object_type":"device","rebac_allow":false,"scope_allow":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":"7dd36350-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7dd36350-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/26fc10a3-9a17-44bf-84cb-17e7f787a511/signaling 200 10ms","method":"POST","requestID":"7dd36350-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/26fc10a3-9a17-44bf-84cb-17e7f787a511/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/9fdea069-8293-48fe-8076-df85fb2a7c41","requestID":"eeb346059aed13a6c5ef120629949df5"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/9fdea069-8293-48fe-8076-df85fb2a7c41 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":"eeb346059aed13a6c5ef120629949df5"} experiment-1 | {"level":"info","message":"DELETE /experiments/9fdea069-8293-48fe-8076-df85fb2a7c41 204 134ms","method":"DELETE","requestID":"eeb346059aed13a6c5ef120629949df5","responseTime":134,"status":204,"url":"/experiments/9fdea069-8293-48fe-8076-df85fb2a7c41"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +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.543","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"f25dbc077e3a688c2abd6a0db6598eaf"} gateway-1 | {"time_local":"07/Oct/2024:09:35:29 +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.551","http_referrer":"","http_user_agent":"Python/3.10 aiohttp/3.10.9","requestID":"b6e0a3ddba452c4d78ba7c1dbfc904ca"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 109ms","method":"POST","requestID":"d45fb34036718302bb85518cd386265b","responseTime":109,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.113","http_referrer":"","http_user_agent":"node-fetch","requestID":"d45fb34036718302bb85518cd386265b"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 109ms","method":"POST","requestID":"13df6347c8f3840b934c4756bd0d61cb","responseTime":109,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.114","http_referrer":"","http_user_agent":"node-fetch","requestID":"13df6347c8f3840b934c4756bd0d61cb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI","level":"info","message":"auth send jwt","requestID":"5b9775dfad26d6eed3a451fad83ee1fe"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5b9775dfad26d6eed3a451fad83ee1fe","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/26fc10a3-9a17-44bf-84cb-17e7f787a511' closed"} device-1 | {"level":"info","message":"postDevices called","requestID":"5b9775dfad26d6eed3a451fad83ee1fe"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1637,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1637,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.082649,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5b9775dfad26d6eed3a451fad83ee1fe","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"5b9775dfad26d6eed3a451fad83ee1fe","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/9aa4f97b-378e-4982-812e-6cc4c1184abf' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"f85182d1-a435-4de1-91d0-175b78af7225","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.885361} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5b9775dfad26d6eed3a451fad83ee1fe","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1f229115-0365-4153-83db-c8b38cc9b544","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.8903651} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"5b9775dfad26d6eed3a451fad83ee1fe","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"6f3580de-4eea-4dbd-a7c4-14fc24da9956","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.9007945} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"462f305a-6b31-4974-90a6-d4ec92128859","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.9009182} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"5b9775dfad26d6eed3a451fad83ee1fe","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.900737373Z"}]},"request_id":"20660646-0c1b-45c9-8920-8c16de95502c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.9056673} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"5b9775dfad26d6eed3a451fad83ee1fe","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"5b9775dfad26d6eed3a451fad83ee1fe"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.049","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"5b9775dfad26d6eed3a451fad83ee1fe"} device-1 | {"level":"info","message":"POST /devices? 201 43ms","method":"POST","requestID":"5b9775dfad26d6eed3a451fad83ee1fe","responseTime":43,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI","level":"info","message":"auth send jwt","requestID":"4d47d4ba785f617e7f51af0be9824ef3"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"4d47d4ba785f617e7f51af0be9824ef3","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"4d47d4ba785f617e7f51af0be9824ef3"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1638,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1638,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.866328,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:29Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4d47d4ba785f617e7f51af0be9824ef3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293729,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzcyOX0.Pq4PfhA_6QoHxGC4wHTElxo_-wAV1DsrPHnNkeM_bWI"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"4d47d4ba785f617e7f51af0be9824ef3","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"b86b7391-cf75-41fc-9003-60f5b1cd2568","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.9285722} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d47d4ba785f617e7f51af0be9824ef3","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4a53414c-ea77-4760-8e86-781716cafd34","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.9336312} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"4d47d4ba785f617e7f51af0be9824ef3","responseTime":4,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"f037d733-76b3-42ee-a863-bfeb0e32e5e5","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.950074} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4ba46cc3-5273-45f3-ab6b-6d09a4d52bed","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.9502687} authorization-1 | {"level":"info","message":"POST /relations/update 200 19ms","method":"POST","requestID":"4d47d4ba785f617e7f51af0be9824ef3","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.950031672Z"}]},"request_id":"5ac3fba2-2652-4f98-89a3-0574184d571e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293729.9543705} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"4d47d4ba785f617e7f51af0be9824ef3","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"4d47d4ba785f617e7f51af0be9824ef3"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.047","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"4d47d4ba785f617e7f51af0be9824ef3"} device-1 | {"level":"info","message":"POST /devices? 201 44ms","method":"POST","requestID":"4d47d4ba785f617e7f51af0be9824ef3","responseTime":44,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"1fb0e6b7cfecaeeeedacc49683349666","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"1fb0e6b7cfecaeeeedacc49683349666","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/websocket 200 0ms","method":"OPTIONS","requestID":"1fb0e6b7cfecaeeeedacc49683349666","responseTime":0,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/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":"1fb0e6b7cfecaeeeedacc49683349666"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"45df607f500eeeb66955cdc5b27ee581","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"45df607f500eeeb66955cdc5b27ee581","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/websocket 200 0ms","method":"OPTIONS","requestID":"45df607f500eeeb66955cdc5b27ee581","responseTime":0,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:31 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/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":"45df607f500eeeb66955cdc5b27ee581"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMX0.76v3S70ZSXtYk90eRibCNVvRCOVKqr0cpTo-rQH8HzQ","level":"info","message":"auth send jwt","requestID":"c555bfd84d4b3dcb216257e25b688942"} authentication-1 | {"level":"info","message":"GET /auth 200 6ms","method":"GET","requestID":"c555bfd84d4b3dcb216257e25b688942","responseTime":6,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"c555bfd84d4b3dcb216257e25b688942"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1639,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:31Z"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMX0.76v3S70ZSXtYk90eRibCNVvRCOVKqr0cpTo-rQH8HzQ","level":"info","message":"auth send jwt","requestID":"576cd843652043d83811e25f631635b9"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"576cd843652043d83811e25f631635b9","responseTime":3,"status":200,"url":"/auth"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1639,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.157709,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:31Z"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"576cd843652043d83811e25f631635b9"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"c555bfd84d4b3dcb216257e25b688942","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293731,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMX0.76v3S70ZSXtYk90eRibCNVvRCOVKqr0cpTo-rQH8HzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"c555bfd84d4b3dcb216257e25b688942","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1640,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1640,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.718311,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"576cd843652043d83811e25f631635b9","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293731,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMX0.76v3S70ZSXtYk90eRibCNVvRCOVKqr0cpTo-rQH8HzQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"576cd843652043d83811e25f631635b9","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"c555bfd84d4b3dcb216257e25b688942"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/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":"c555bfd84d4b3dcb216257e25b688942"} device-1 | {"level":"info","message":"POST /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/websocket 200 17ms","method":"POST","requestID":"c555bfd84d4b3dcb216257e25b688942","responseTime":17,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/websocket"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"576cd843652043d83811e25f631635b9"} device-1 | {"level":"info","message":"POST /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/websocket 200 21ms","method":"POST","requestID":"576cd843652043d83811e25f631635b9","responseTime":21,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/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":"576cd843652043d83811e25f631635b9"} device-1 | {"level":"info","message":"device 'http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155' connected"} device-1 | {"level":"info","message":"device 'http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"babbe76d5551b4cec8e305f972def3eb","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"babbe76d5551b4cec8e305f972def3eb","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155? 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":"babbe76d5551b4cec8e305f972def3eb"} device-1 | {"level":"info","message":"OPTIONS /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155? 200 1ms","method":"OPTIONS","requestID":"babbe76d5551b4cec8e305f972def3eb","responseTime":1,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg","level":"info","message":"auth send jwt","requestID":"a49d87c081b363b63eb6c04481a9fdcb"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a49d87c081b363b63eb6c04481a9fdcb","responseTime":4,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"3b2be311b64b01cdee8adea05fbeb9a7","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"a49d87c081b363b63eb6c04481a9fdcb"} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"3b2be311b64b01cdee8adea05fbeb9a7","responseTime":0,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712? 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":"3b2be311b64b01cdee8adea05fbeb9a7"} device-1 | {"level":"info","message":"OPTIONS /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712? 200 0ms","method":"OPTIONS","requestID":"3b2be311b64b01cdee8adea05fbeb9a7","responseTime":0,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712?"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1641,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1641,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.045813,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a49d87c081b363b63eb6c04481a9fdcb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"a49d87c081b363b63eb6c04481a9fdcb","responseTime":4,"status":200,"url":"/authorize"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg","level":"info","message":"auth send jwt","requestID":"8fa1a81e8dfa1edd2e27e8e846e5727a"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"8fa1a81e8dfa1edd2e27e8e846e5727a","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"8fa1a81e8dfa1edd2e27e8e846e5727a"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.950031672Z"}]},"request_id":"dae2c0f8-831f-4d36-8f0e-26ecd9d80722","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.065272} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"a49d87c081b363b63eb6c04481a9fdcb","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1642,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1642,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.912213,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8fa1a81e8dfa1edd2e27e8e846e5727a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"8fa1a81e8dfa1edd2e27e8e846e5727a","responseTime":4,"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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"95a9929d-8d24-4b27-a222-bb9df2a0191b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.0728846} authorization-1 | {"level":"info","message":"POST /relations/update 200 5ms","method":"POST","requestID":"a49d87c081b363b63eb6c04481a9fdcb","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.900737373Z"}]},"request_id":"27a610f3-f41e-4ba4-981b-e9e526c2695c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.0807183} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8fa1a81e8dfa1edd2e27e8e846e5727a","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"4330f9bd-255a-4dbe-ac1a-a6e196a8d126","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.0865283} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"8fa1a81e8dfa1edd2e27e8e846e5727a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.950031672Z"}]},"request_id":"55ef39da-c1ed-442d-8627-a7c154ebf18d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.0927167} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"a49d87c081b363b63eb6c04481a9fdcb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"a49d87c081b363b63eb6c04481a9fdcb"} device-1 | {"level":"info","message":"PATCH /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155? 200 41ms","method":"PATCH","requestID":"a49d87c081b363b63eb6c04481a9fdcb","responseTime":41,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155? 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":"a49d87c081b363b63eb6c04481a9fdcb"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.900737373Z"}]},"request_id":"d8edc45f-2750-451e-af70-8798498457bf","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.104612} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8fa1a81e8dfa1edd2e27e8e846e5727a","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"8fa1a81e8dfa1edd2e27e8e846e5727a"} device-1 | {"level":"info","message":"PATCH /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712? 200 43ms","method":"PATCH","requestID":"8fa1a81e8dfa1edd2e27e8e846e5727a","responseTime":43,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712? 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":"8fa1a81e8dfa1edd2e27e8e846e5727a"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg","level":"info","message":"auth send jwt","requestID":"acfd0a45f86188f1fa8485c5b1c7a7cb"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"acfd0a45f86188f1fa8485c5b1c7a7cb","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"acfd0a45f86188f1fa8485c5b1c7a7cb"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1643,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1643,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.213767,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"acfd0a45f86188f1fa8485c5b1c7a7cb","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"acfd0a45f86188f1fa8485c5b1c7a7cb","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.900737373Z"}]},"request_id":"36954711-ec68-4ed5-ae41-a2efb3fe15ab","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.1283095} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"acfd0a45f86188f1fa8485c5b1c7a7cb","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"acfd0a45f86188f1fa8485c5b1c7a7cb"} device-1 | {"level":"info","message":"GET /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712? 200 14ms","method":"GET","requestID":"acfd0a45f86188f1fa8485c5b1c7a7cb","responseTime":14,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712? 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":"acfd0a45f86188f1fa8485c5b1c7a7cb"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg","level":"info","message":"auth send jwt","requestID":"f096d0dd1f944a1c516acea44e41a83a"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"f096d0dd1f944a1c516acea44e41a83a","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"f096d0dd1f944a1c516acea44e41a83a"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1644,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1644,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.882482,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"f096d0dd1f944a1c516acea44e41a83a","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"f096d0dd1f944a1c516acea44e41a83a","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.950031672Z"}]},"request_id":"e7dd4a79-0cc9-44a7-9507-2ec2f8622f3d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.149477} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"f096d0dd1f944a1c516acea44e41a83a","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"f096d0dd1f944a1c516acea44e41a83a"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155? 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":"f096d0dd1f944a1c516acea44e41a83a"} device-1 | {"level":"info","message":"GET /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155? 200 13ms","method":"GET","requestID":"f096d0dd1f944a1c516acea44e41a83a","responseTime":13,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg","level":"info","message":"auth send jwt","requestID":"e389256a57baf278b1f47d1265fd7495"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"e389256a57baf278b1f47d1265fd7495","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"e389256a57baf278b1f47d1265fd7495"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1645,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1645,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":0.830998,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"e389256a57baf278b1f47d1265fd7495","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"e389256a57baf278b1f47d1265fd7495","responseTime":4,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Attempting to run experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Attempting to book experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Successfully booked experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7f425ca0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7f42aac0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1646,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1647,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1646,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.592434,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f425ca0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7f425ca0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1647,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.642131,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f42aac0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7f42aac0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.900737373Z"}]},"request_id":"e9570e02-563e-40a2-b115-bf6bdd497a1b","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.2099323} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7f425ca0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.950031672Z"}]},"request_id":"bbb22235-43c8-4fd8-b347-82e35c810f85","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.210752} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7f42aac0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7f425ca0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712? 200 12ms","method":"GET","requestID":"7f425ca0-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7f42aac0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155? 200 11ms","method":"GET","requestID":"7f42aac0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Setting up experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Successfully locked booking for experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Attempting to update booking for experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Successfully updated booking for experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Successfully set up experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7f4ce3f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7f4d3210-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7f4d8030-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Successfully running experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1648,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1649,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1648,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":3.26272,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f4ce3f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"7f4ce3f0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1649,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.257032,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f4d3210-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 10ms","method":"POST","requestID":"7f4d3210-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:43384","level":"info","msg":"Received request.","req_id":1650,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6c5a673c-da5e-43c7-afa1-01a9f6e76ca9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.2874346} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.900737373Z"}]},"request_id":"a31c9949-17f1-4f3b-90ae-0d7bf06bf03a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.2883599} authorization-1 | {"client_addr":"127.0.0.1:43384","level":"info","msg":"Sent response.","req_id":1650,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.042809,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"7f4ce3f0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f4d8030-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","object_type":"device","rebac_allow":false,"scope_allow":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":"7f4d8030-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.950031672Z"}]},"request_id":"58dd3d9d-7dd0-4497-928e-8e03bc3bb020","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.2897658} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"7f4d3210-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7f4ce3f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712? 200 26ms","method":"GET","requestID":"7f4ce3f0-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7f4d8030-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/signaling 200 23ms","method":"POST","requestID":"7f4d8030-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/signaling"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7f4d3210-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155? 200 26ms","method":"GET","requestID":"7f4d3210-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd71aee12-0bd0-44b3-919b-de564ac84b82#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd71aee12-0bd0-44b3-919b-de564ac84b82","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"e62db92e-e886-45e3-960f-3eb717614770","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.3025112} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7f51c5f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"91829638-dcf0-4f14-acab-1987ae8f818c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.3029199} authorization-1 | {"level":"info","message":"POST /relations/update 200 26ms","method":"POST","requestID":"e389256a57baf278b1f47d1265fd7495","responseTime":26,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7f521410-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1651,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1652,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ab6eb9b3-4365-44ef-8ead-3becf9650c7e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.3101108} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1651,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":4.042321,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f51c5f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","object_type":"device","rebac_allow":false,"scope_allow":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":"7f51c5f0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5747f661-56ba-4a0a-bbce-778707a4fd98","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.312092} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1652,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.754614,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f521410-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","object_type":"device","rebac_allow":false,"scope_allow":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":"7f521410-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"e389256a57baf278b1f47d1265fd7495"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"808","request_time":"0.160","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"e389256a57baf278b1f47d1265fd7495"} experiment-1 | {"level":"info","message":"POST /experiments? 201 154ms","method":"POST","requestID":"e389256a57baf278b1f47d1265fd7495","responseTime":154,"status":201,"url":"/experiments?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7f51c5f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/signaling 200 15ms","method":"POST","requestID":"7f51c5f0-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg","level":"info","message":"auth send jwt","requestID":"ce925a8ac3b764cbe6095e0fdff9d2c3"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"ce925a8ac3b764cbe6095e0fdff9d2c3","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"ce925a8ac3b764cbe6095e0fdff9d2c3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7f521410-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/signaling 200 19ms","method":"POST","requestID":"7f521410-848f-11ef-9233-95baf63f17e0","responseTime":19,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/signaling"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1653,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1653,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.881082,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"ce925a8ac3b764cbe6095e0fdff9d2c3","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"ce925a8ac3b764cbe6095e0fdff9d2c3","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7f556f70-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1654,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35: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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.900737373Z"}]},"request_id":"0e63fc92-8c22-4c33-9741-d6a943e41274","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.331915} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"83b6fa59-9e71-42ea-80d2-22e16328721d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.3322601} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"ce925a8ac3b764cbe6095e0fdff9d2c3","responseTime":3,"status":200,"url":"/relations/query"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1654,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.563955,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f556f70-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","object_type":"device","rebac_allow":false,"scope_allow":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":"7f556f70-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"ce925a8ac3b764cbe6095e0fdff9d2c3"} device-1 | {"level":"info","message":"GET /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712? 200 14ms","method":"GET","requestID":"ce925a8ac3b764cbe6095e0fdff9d2c3","responseTime":14,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712? 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":"ce925a8ac3b764cbe6095e0fdff9d2c3"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7f556f70-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/signaling 200 11ms","method":"POST","requestID":"7f556f70-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7f576b40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"7f57b960-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg","level":"info","message":"auth send jwt","requestID":"71fb75634e57036b244cc081f69eeb35"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"71fb75634e57036b244cc081f69eeb35","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"71fb75634e57036b244cc081f69eeb35"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1655,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1655,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.779378,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1656,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f576b40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7f576b40-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1656,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.568218,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f57b960-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"7f57b960-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1657,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1657,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.623758,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"71fb75634e57036b244cc081f69eeb35","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"71fb75634e57036b244cc081f69eeb35","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.900737373Z"}]},"request_id":"6504ff79-2172-46ef-b045-a9dc35a11ad7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.349114} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7f576b40-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.950031672Z"}]},"request_id":"ca90ca2b-55d2-4d75-a616-8eb00b9b9f77","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.350536} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"7f57b960-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:29.950031672Z"}]},"request_id":"1570a9e5-11a7-4d72-a614-e1274dbaa3ef","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.3521738} authorization-1 | {"level":"info","message":"POST /relations/query 200 1ms","method":"POST","requestID":"71fb75634e57036b244cc081f69eeb35","responseTime":1,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7f576b40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712? 200 13ms","method":"GET","requestID":"7f576b40-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"7f57b960-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155? 200 13ms","method":"GET","requestID":"7f57b960-848f-11ef-9233-95baf63f17e0","responseTime":13,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"71fb75634e57036b244cc081f69eeb35"} device-1 | {"level":"info","message":"GET /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155? 200 13ms","method":"GET","requestID":"71fb75634e57036b244cc081f69eeb35","responseTime":13,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155? 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":"71fb75634e57036b244cc081f69eeb35"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Building connection plan","requestID":"e389256a57baf278b1f47d1265fd7495"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"d6c90dd2-ec52-4b54-aba6-45dfc331aab5"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"d201ee74-f323-42a6-97e1-93fffd7a655e"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"917d72b1-4f67-4cc5-b584-706a8816f19b"}]},"level":"info","message":"Built pairwise service configurations","requestID":"e389256a57baf278b1f47d1265fd7495"} 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/ebfec3a9-17e6-4552-9697-fdfe00ec4155"},{"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/3217c2d7-8d77-41ec-b559-ab0a5a6f8712"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"e389256a57baf278b1f47d1265fd7495"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"7f5a2a60-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1658,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1658,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":0.953887,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f5a2a60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7f5a2a60-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"1b60cc6f-e561-4e53-af5c-844415000f71","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.369742} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"091039a7-c98b-4eea-9ce6-fc35a79b16c6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.370161} authorization-1 | {"level":"info","message":"POST /relations/update 200 4ms","method":"POST","requestID":"7f5a2a60-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"7f5a2a60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"7f5a2a60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7'","requestID":"7f5a2a60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7'","requestID":"7f5a2a60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"7f5a2a60-848f-11ef-9233-95baf63f17e0"} 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":"7f5a2a60-848f-11ef-9233-95baf63f17e0","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":"7f5a2a60-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"e389256a57baf278b1f47d1265fd7495"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7f61f290-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1659,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"6f1b1335-9846-4ee6-986c-ebc022b863a8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.4138527} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1659,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.329332,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f61f290-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","object_type":"device","rebac_allow":false,"scope_allow":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":"7f61f290-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7f61f290-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/signaling 200 8ms","method":"POST","requestID":"7f61f290-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7f637930-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1660,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e11bb442-323a-481b-83c3-95f19af49d76","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.4239159} device-1 | {"device":"3217c2d7-8d77-41ec-b559-ab0a5a6f8712","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"3217c2d7-8d77-41ec-b559-ab0a5a6f8712","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1660,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.205267,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f637930-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","object_type":"device","rebac_allow":false,"scope_allow":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":"7f637930-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7f637930-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/signaling 200 12ms","method":"POST","requestID":"7f637930-848f-11ef-9233-95baf63f17e0","responseTime":12,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/signaling"} device-1 | {"device":"ebfec3a9-17e6-4552-9697-fdfe00ec4155","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"ebfec3a9-17e6-4552-9697-fdfe00ec4155","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 2654763325231008632 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:odxf\r\na=ice-pwd:efgU2OPKcpVQNSS0P7Edu/vr\r\na=ice-options:trickle\r\na=fingerprint:sha-256 CD:27:38:3B:0E:CB:9C:2A:C0:D7:15:96:E8:A3:58:AE:8A:56:37:27:3F:F2:04:94:EB:17:4B:17:8E:83:65:DA\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"3217c2d7-8d77-41ec-b559-ab0a5a6f8712","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 7589581231700036208 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:KdBC\r\na=ice-pwd:OfMBrUIw6s3AehXOvZKUsnzt\r\na=ice-options:trickle\r\na=fingerprint:sha-256 B0:E8:D1:81:15:16:1E:FF:1D:F5:BA:ED:99:16:D1:CB:43:F6:D9:31:BA:1A:41:2C:5F:CC:F1:F8:E6:75:20:5D\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"ebfec3a9-17e6-4552-9697-fdfe00ec4155","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:1204653586 1 udp 2113937151 8e17946a-2987-4c3c-99af-a21a8f72b175.local 51156 typ host generation 0 ufrag KdBC network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ebfec3a9-17e6-4552-9697-fdfe00ec4155","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:3571855105 1 udp 1677729535 141.24.211.56 51156 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag KdBC network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"ebfec3a9-17e6-4552-9697-fdfe00ec4155","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/ebfec3a9-17e6-4552-9697-fdfe00ec4155'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155'"} device-1 | {"content":{"candidate":"candidate:3359437671 1 udp 2113937151 97aae7b9-e676-4a02-9e6c-030eb311ec83.local 52434 typ host generation 0 ufrag odxf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3217c2d7-8d77-41ec-b559-ab0a5a6f8712","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:1528255092 1 udp 1677729535 141.24.211.56 52434 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag odxf network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"3217c2d7-8d77-41ec-b559-ab0a5a6f8712","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/3217c2d7-8d77-41ec-b559-ab0a5a6f8712'"} device-1 | {"device":"3217c2d7-8d77-41ec-b559-ab0a5a6f8712","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/084b47ff-23b5-462d-9fdd-04c5fb72edd7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"084b47ff-23b5-462d-9fdd-04c5fb72edd7","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"ebfec3a9-17e6-4552-9697-fdfe00ec4155","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"ebfec3a9-17e6-4552-9697-fdfe00ec4155","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"ff7ef16ad3645904dc173dc9d9d649b9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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":"3217c2d7-8d77-41ec-b559-ab0a5a6f8712","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"ff7ef16ad3645904dc173dc9d9d649b9","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/ebfec3a9-17e6-4552-9697-fdfe00ec4155"},{"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/3217c2d7-8d77-41ec-b559-ab0a5a6f8712"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7"}}},"level":"info","message":"received a callback","requestID":"ff7ef16ad3645904dc173dc9d9d649b9"} device-1 | {"device":"3217c2d7-8d77-41ec-b559-ab0a5a6f8712","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"ebfec3a9-17e6-4552-9697-fdfe00ec4155","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":"ff7ef16ad3645904dc173dc9d9d649b9","responseTime":5,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.008","http_referrer":"","http_user_agent":"node-fetch","requestID":"ff7ef16ad3645904dc173dc9d9d649b9"} device-1 | {"device":"ebfec3a9-17e6-4552-9697-fdfe00ec4155","deviceName":"JS Device 2","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"084b47ff-23b5-462d-9fdd-04c5fb72edd7","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"data":{"peerconnection":"084b47ff-23b5-462d-9fdd-04c5fb72edd7","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/084b47ff-23b5-462d-9fdd-04c5fb72edd7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"084b47ff-23b5-462d-9fdd-04c5fb72edd7","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"326ef735d544aac3c73b3deb1de28e58","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"326ef735d544aac3c73b3deb1de28e58","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/ebfec3a9-17e6-4552-9697-fdfe00ec4155"},{"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/3217c2d7-8d77-41ec-b559-ab0a5a6f8712"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7"}}},"level":"info","message":"received a callback","requestID":"326ef735d544aac3c73b3deb1de28e58"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"7f6f11f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1661,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F084b47ff-23b5-462d-9fdd-04c5fb72edd7","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"2bbe84f1-d35c-42c1-bb35-04bbc0ea9f50","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.4996774} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1661,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.21321,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f6f11f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7","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":"7f6f11f0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"7f6f11f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7 200 7ms","method":"GET","requestID":"7f6f11f0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"326ef735d544aac3c73b3deb1de28e58","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"326ef735d544aac3c73b3deb1de28e58"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7f7357b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1662,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"348eb757-c6eb-4642-b43c-528271c3e488","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.5271068} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1662,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.245346,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f7357b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","object_type":"device","rebac_allow":false,"scope_allow":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":"7f7357b0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7f7357b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/signaling 200 7ms","method":"POST","requestID":"7f7357b0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7f74b740-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1663,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"ae2fe6bf-ee1d-419b-8461-292e208583f0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.5360203} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1663,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.06222,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f74b740-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","object_type":"device","rebac_allow":false,"scope_allow":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":"7f74b740-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7f74b740-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/signaling 200 7ms","method":"POST","requestID":"7f74b740-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg","level":"info","message":"auth send jwt","requestID":"a83166d16b9841187477fbd59a4f145e"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"a83166d16b9841187477fbd59a4f145e","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/d71aee12-0bd0-44b3-919b-de564ac84b82","requestID":"a83166d16b9841187477fbd59a4f145e"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1664,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1664,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.624122,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a83166d16b9841187477fbd59a4f145e","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"a83166d16b9841187477fbd59a4f145e","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/d71aee12-0bd0-44b3-919b-de564ac84b82","requestID":"a83166d16b9841187477fbd59a4f145e"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/d71aee12-0bd0-44b3-919b-de564ac84b82 HTTP/1.1","status": "200","body_bytes_sent":"881","request_time":"0.011","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"a83166d16b9841187477fbd59a4f145e"} experiment-1 | {"level":"info","message":"GET /experiments/d71aee12-0bd0-44b3-919b-de564ac84b82 200 8ms","method":"GET","requestID":"a83166d16b9841187477fbd59a4f145e","responseTime":8,"status":200,"url":"/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg","level":"info","message":"auth send jwt","requestID":"52b30afae1c5095716bcd56fac4e2fc1"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"52b30afae1c5095716bcd56fac4e2fc1","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/d71aee12-0bd0-44b3-919b-de564ac84b82","requestID":"52b30afae1c5095716bcd56fac4e2fc1"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1665,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1665,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.927693,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"52b30afae1c5095716bcd56fac4e2fc1","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"52b30afae1c5095716bcd56fac4e2fc1","responseTime":2,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Attempting to finish experiment","requestID":"52b30afae1c5095716bcd56fac4e2fc1"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"7f7e7b40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1666,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1666,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.647492,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f7e7b40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"7f7e7b40-848f-11ef-9233-95baf63f17e0","responseTime":2,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7","device":"ebfec3a9-17e6-4552-9697-fdfe00ec4155","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7","device":"3217c2d7-8d77-41ec-b559-ab0a5a6f8712","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/084b47ff-23b5-462d-9fdd-04c5fb72edd7' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"084b47ff-23b5-462d-9fdd-04c5fb72edd7","statusDeviceA":"closed","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F084b47ff-23b5-462d-9fdd-04c5fb72edd7': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2F084b47ff-23b5-462d-9fdd-04c5fb72edd7","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"8ae80060-6eed-491c-96f3-ad2c4bb47fc1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.6126926} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"3c613abe-d5d8-4c84-ae15-c34bdb0fdb01","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.612831} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"67da00c3a9da7eae5c80f9447eab42ce","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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 6ms","method":"POST","requestID":"7f7e7b40-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/relations/update"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"67da00c3a9da7eae5c80f9447eab42ce","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"29e2e9d310fa42c02c2d1d86094f310f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"29e2e9d310fa42c02c2d1d86094f310f","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/ebfec3a9-17e6-4552-9697-fdfe00ec4155"},{"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/3217c2d7-8d77-41ec-b559-ab0a5a6f8712"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7"}}},"level":"info","message":"received a callback","requestID":"67da00c3a9da7eae5c80f9447eab42ce"} 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/ebfec3a9-17e6-4552-9697-fdfe00ec4155"},{"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/3217c2d7-8d77-41ec-b559-ab0a5a6f8712"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7"}}},"level":"info","message":"received a callback","requestID":"29e2e9d310fa42c02c2d1d86094f310f"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"7f7e7b40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7 204 34ms","method":"DELETE","requestID":"7f7e7b40-848f-11ef-9233-95baf63f17e0","responseTime":34,"status":204,"url":"/peerconnections/084b47ff-23b5-462d-9fdd-04c5fb72edd7"} device-1 | {"data":{"error":{"name":"MissingEntityError","status":404}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712'"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"},"level":"info","message":"Successfully finished experiment","requestID":"52b30afae1c5095716bcd56fac4e2fc1"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7f85ce40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1667,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2Febfec3a9-17e6-4552-9697-fdfe00ec4155","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"b0281e80-8506-4a49-839b-4ab105eb7ca9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.6483924} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1667,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.244933,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f85ce40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155","object_type":"device","rebac_allow":false,"scope_allow":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":"7f85ce40-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7f85ce40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/signaling 200 8ms","method":"POST","requestID":"7f85ce40-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/ebfec3a9-17e6-4552-9697-fdfe00ec4155/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"7f8754e0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd71aee12-0bd0-44b3-919b-de564ac84b82': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2Fd71aee12-0bd0-44b3-919b-de564ac84b82","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"27e5211b-941a-4de7-964c-6822dfb9010e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.6555102} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"b674d550-883c-4edb-80f5-07643a7f2221","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.655986} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"52b30afae1c5095716bcd56fac4e2fc1","responseTime":15,"status":200,"url":"/relations/update"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1668,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F3217c2d7-8d77-41ec-b559-ab0a5a6f8712","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1a1faf15-9d97-419b-9d0d-944b34874a2f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.6594758} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1668,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.100672,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"7f8754e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"7f8754e0-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"7f8754e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/signaling 200 9ms","method":"POST","requestID":"7f8754e0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/d71aee12-0bd0-44b3-919b-de564ac84b82","requestID":"52b30afae1c5095716bcd56fac4e2fc1"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/d71aee12-0bd0-44b3-919b-de564ac84b82 HTTP/1.1","status": "204","body_bytes_sent":"0","request_time":"0.133","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"52b30afae1c5095716bcd56fac4e2fc1"} experiment-1 | {"level":"info","message":"DELETE /experiments/d71aee12-0bd0-44b3-919b-de564ac84b82 204 132ms","method":"DELETE","requestID":"52b30afae1c5095716bcd56fac4e2fc1","responseTime":132,"status":204,"url":"/experiments/d71aee12-0bd0-44b3-919b-de564ac84b82"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 104ms","method":"POST","requestID":"67da00c3a9da7eae5c80f9447eab42ce","responseTime":104,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.107","http_referrer":"","http_user_agent":"node-fetch","requestID":"67da00c3a9da7eae5c80f9447eab42ce"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 104ms","method":"POST","requestID":"29e2e9d310fa42c02c2d1d86094f310f","responseTime":104,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /callbacks/experiment HTTP/1.1","status": "200","body_bytes_sent":"5","request_time":"0.107","http_referrer":"","http_user_agent":"node-fetch","requestID":"29e2e9d310fa42c02c2d1d86094f310f"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg","level":"info","message":"auth send jwt","requestID":"efd2e39cfeca842a312818a25fb6849f"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"efd2e39cfeca842a312818a25fb6849f","responseTime":3,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"efd2e39cfeca842a312818a25fb6849f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1669,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1669,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":1.0154,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"efd2e39cfeca842a312818a25fb6849f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"efd2e39cfeca842a312818a25fb6849f","responseTime":5,"status":200,"url":"/authorize"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +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.707","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"b9b5f1127a79159655b6f9878e71a110"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +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.699","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"7d4fd265aa7d012841e39e5ba16b3516"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/3217c2d7-8d77-41ec-b559-ab0a5a6f8712' 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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b735f85-a5e4-4e39-9c8a-ec1749176d7b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"4fe25fb7-5376-4b1c-bd35-de316fd3e42a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.7374523} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"efd2e39cfeca842a312818a25fb6849f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"d483d0af-e4b0-4d05-bcfa-75c4f3367511","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.741543} authorization-1 | {"level":"info","message":"POST /relations/update 200 3ms","method":"POST","requestID":"efd2e39cfeca842a312818a25fb6849f","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/ebfec3a9-17e6-4552-9697-fdfe00ec4155' closed"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b735f85-a5e4-4e39-9c8a-ec1749176d7b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"5f549426-8d04-4e95-be63-05d2857d7198","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.753294} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"7527268e-01e6-444e-b80c-9bda071ba5e9","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.753337} authorization-1 | {"level":"info","message":"POST /relations/update 200 13ms","method":"POST","requestID":"efd2e39cfeca842a312818a25fb6849f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b735f85-a5e4-4e39-9c8a-ec1749176d7b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b735f85-a5e4-4e39-9c8a-ec1749176d7b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:32.753258712Z"}]},"request_id":"4141e1c3-712f-4e49-8124-418a44f217ae","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.7564802} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"efd2e39cfeca842a312818a25fb6849f","responseTime":2,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"efd2e39cfeca842a312818a25fb6849f"} gateway-1 | {"time_local":"07/Oct/2024:09:35:32 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices? HTTP/1.1","status": "201","body_bytes_sent":"434","request_time":"0.041","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"efd2e39cfeca842a312818a25fb6849f"} device-1 | {"level":"info","message":"POST /devices? 201 36ms","method":"POST","requestID":"efd2e39cfeca842a312818a25fb6849f","responseTime":36,"status":201,"url":"/devices?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg","level":"info","message":"auth send jwt","requestID":"867ffacec12ebbeef056b853ae69a429"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"867ffacec12ebbeef056b853ae69a429","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevices called","requestID":"867ffacec12ebbeef056b853ae69a429"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1670,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1670,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":599,"resp_duration":0.67933,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:32Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"device:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"867ffacec12ebbeef056b853ae69a429","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:~~~TYPE~~~","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293732,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczMn0.YWs24mq0zHwz9lPczSjG1YuEbXLNiTo7O_IosbGEfMg"} authorization-1 | {"level":"info","message":"POST /authorize 200 2ms","method":"POST","requestID":"867ffacec12ebbeef056b853ae69a429","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[]},"request_id":"5bbab72f-77a1-4e7c-b76c-40f29fdb4922","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.7790906} authorization-1 | {"level":"info","message":"POST /relations/query 200 2ms","method":"POST","requestID":"867ffacec12ebbeef056b853ae69a429","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"647c0f03-4c93-4c3c-ad16-5e7dcb60a0dc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.7825387} authorization-1 | {"level":"info","message":"POST /relations/update 200 2ms","method":"POST","requestID":"867ffacec12ebbeef056b853ae69a429","responseTime":2,"status":200,"url":"/relations/update"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"c53dcb01-3d92-46c2-9bba-46caa43bc696","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.7969654} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"25656157-f615-4483-a57b-28281e85c7de","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.7971468} authorization-1 | {"level":"info","message":"POST /relations/update 200 16ms","method":"POST","requestID":"867ffacec12ebbeef056b853ae69a429","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:32.796914177Z"}]},"request_id":"f49d2649-8a2e-44a2-9665-1b474d075fc7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293732.8019333} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"867ffacec12ebbeef056b853ae69a429","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevices succeeded","requestID":"867ffacec12ebbeef056b853ae69a429"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.045","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"867ffacec12ebbeef056b853ae69a429"} device-1 | {"level":"info","message":"POST /devices? 201 41ms","method":"POST","requestID":"867ffacec12ebbeef056b853ae69a429","responseTime":41,"status":201,"url":"/devices?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"c7ce5cee96c3bbfa26d5d287f9af71ac","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"c7ce5cee96c3bbfa26d5d287f9af71ac","responseTime":1,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/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":"c7ce5cee96c3bbfa26d5d287f9af71ac"} device-1 | {"level":"info","message":"OPTIONS /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/websocket 200 1ms","method":"OPTIONS","requestID":"c7ce5cee96c3bbfa26d5d287f9af71ac","responseTime":1,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/websocket"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4","level":"info","message":"auth send jwt","requestID":"5ebf2be7b4f658aa89db1ae92da269fd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"5ebf2be7b4f658aa89db1ae92da269fd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"5ebf2be7b4f658aa89db1ae92da269fd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1671,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1671,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.225174,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"5ebf2be7b4f658aa89db1ae92da269fd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"5ebf2be7b4f658aa89db1ae92da269fd","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"5ebf2be7b4f658aa89db1ae92da269fd"} gateway-1 | {"time_local":"07/Oct/2024:09:35:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/websocket HTTP/1.1","status": "200","body_bytes_sent":"38","request_time":"0.033","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"5ebf2be7b4f658aa89db1ae92da269fd"} device-1 | {"level":"info","message":"POST /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/websocket 200 27ms","method":"POST","requestID":"5ebf2be7b4f658aa89db1ae92da269fd","responseTime":27,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/websocket"} device-1 | {"level":"info","message":"device 'http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"9690761e3cf3ff0b297e56b28e2afa09","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"9690761e3cf3ff0b297e56b28e2afa09","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3? 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":"9690761e3cf3ff0b297e56b28e2afa09"} device-1 | {"level":"info","message":"OPTIONS /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3? 200 1ms","method":"OPTIONS","requestID":"9690761e3cf3ff0b297e56b28e2afa09","responseTime":1,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4","level":"info","message":"auth send jwt","requestID":"66a9d4d12d8520172ec8400df4ed1ebd"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"66a9d4d12d8520172ec8400df4ed1ebd","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"66a9d4d12d8520172ec8400df4ed1ebd"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1672,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1672,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.026388,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:34Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"66a9d4d12d8520172ec8400df4ed1ebd","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"66a9d4d12d8520172ec8400df4ed1ebd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:32.796914177Z"}]},"request_id":"95495954-5848-47ff-968b-97047c7c4e61","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293734.888462} authorization-1 | {"level":"info","message":"POST /relations/query 200 8ms","method":"POST","requestID":"66a9d4d12d8520172ec8400df4ed1ebd","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"5c4c26f1-a35d-4776-b18a-611fd81cf8da","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293734.89777} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"66a9d4d12d8520172ec8400df4ed1ebd","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:32.796914177Z"}]},"request_id":"74177fd6-b2f4-4770-8114-7c09008ec13f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293734.9066777} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"66a9d4d12d8520172ec8400df4ed1ebd","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"66a9d4d12d8520172ec8400df4ed1ebd"} gateway-1 | {"time_local":"07/Oct/2024:09:35:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3? 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":"66a9d4d12d8520172ec8400df4ed1ebd"} device-1 | {"level":"info","message":"PATCH /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3? 200 38ms","method":"PATCH","requestID":"66a9d4d12d8520172ec8400df4ed1ebd","responseTime":38,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4","level":"info","message":"auth send jwt","requestID":"4c42f1c47fb5f83184099fa8a74bec2c"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"4c42f1c47fb5f83184099fa8a74bec2c","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"4c42f1c47fb5f83184099fa8a74bec2c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1673,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1673,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.014656,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:34Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"4c42f1c47fb5f83184099fa8a74bec2c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 8ms","method":"POST","requestID":"4c42f1c47fb5f83184099fa8a74bec2c","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:32.796914177Z"}]},"request_id":"3e4e1513-9080-47a9-9664-e7472f672126","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293734.9385784} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"4c42f1c47fb5f83184099fa8a74bec2c","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"4c42f1c47fb5f83184099fa8a74bec2c"} gateway-1 | {"time_local":"07/Oct/2024:09:35:34 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3? 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":"4c42f1c47fb5f83184099fa8a74bec2c"} device-1 | {"level":"info","message":"GET /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3? 200 21ms","method":"GET","requestID":"4c42f1c47fb5f83184099fa8a74bec2c","responseTime":21,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3?"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4","level":"info","message":"auth send jwt","requestID":"864545bc888803cdec104210e70e6fe5"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"864545bc888803cdec104210e70e6fe5","responseTime":4,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling POST request on endpoint /experiments","requestID":"864545bc888803cdec104210e70e6fe5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1674,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:34Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1674,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":607,"resp_duration":1.395171,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:34Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"experiment:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"864545bc888803cdec104210e70e6fe5","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:~~~TYPE~~~","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"864545bc888803cdec104210e70e6fe5","responseTime":6,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Attempting to run experiment","requestID":"864545bc888803cdec104210e70e6fe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Attempting to book experiment","requestID":"864545bc888803cdec104210e70e6fe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Successfully booked experiment","requestID":"864545bc888803cdec104210e70e6fe5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"80ecff60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"80ed4d80-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1675,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1675,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.134349,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:35Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1676,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b735f85-a5e4-4e39-9c8a-ec1749176d7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"80ecff60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/5b735f85-a5e4-4e39-9c8a-ec1749176d7b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"80ecff60-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1676,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.761295,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"80ed4d80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"80ed4d80-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b735f85-a5e4-4e39-9c8a-ec1749176d7b","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F5b735f85-a5e4-4e39-9c8a-ec1749176d7b","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:32.753258712Z"}]},"request_id":"0235875d-a866-4ef4-a08a-7d1e5d88540d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293735.0111167} authorization-1 | {"level":"info","message":"POST /relations/query 200 6ms","method":"POST","requestID":"80ecff60-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:32.796914177Z"}]},"request_id":"65280146-ac32-45f7-afd5-1a9a8c0a90c8","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293735.0130436} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"80ed4d80-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"80ecff60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/5b735f85-a5e4-4e39-9c8a-ec1749176d7b? 200 21ms","method":"GET","requestID":"80ecff60-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/5b735f85-a5e4-4e39-9c8a-ec1749176d7b?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"80ed4d80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3? 200 21ms","method":"GET","requestID":"80ed4d80-848f-11ef-9233-95baf63f17e0","responseTime":21,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Setting up experiment","requestID":"864545bc888803cdec104210e70e6fe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Attempting to lock booking for experiment","requestID":"864545bc888803cdec104210e70e6fe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Successfully locked booking for experiment","requestID":"864545bc888803cdec104210e70e6fe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Attempting to instantiate devices for experiment","requestID":"864545bc888803cdec104210e70e6fe5"} device-1 | {"level":"info","message":"postDevicesByDeviceId called","requestID":"80f36800-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1677,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1677,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.174052,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:35Z"} authorization-1 | {"action":"instantiate","level":"info","message":"opa_check","object":"device:http://localhost/devices/5b735f85-a5e4-4e39-9c8a-ec1749176d7b","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"80f36800-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/5b735f85-a5e4-4e39-9c8a-ec1749176d7b","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"80f36800-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"2a7001e4-d12b-48d6-b79e-cfb66b6b6bf7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293735.0732584} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"1b9db2f8-8ee0-4690-9aeb-eaf02e6e89e1","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293735.0735638} authorization-1 | {"level":"info","message":"POST /relations/update 200 15ms","method":"POST","requestID":"80f36800-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"registering changed-callback for device 'http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6' to 'http://localhost/callbacks/experiment'","requestID":"80f36800-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceId succeeded","requestID":"80f36800-848f-11ef-9233-95baf63f17e0"} authentication-1 | {"level":"info","message":"POST /token 201 26ms","method":"POST","requestID":"80fa6ce0-848f-11ef-aca6-4d802a54d28b","responseTime":26,"status":201,"url":"/token"} device-1 | {"level":"info","message":"POST /devices/5b735f85-a5e4-4e39-9c8a-ec1749176d7b?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 80ms","method":"POST","requestID":"80f36800-848f-11ef-9233-95baf63f17e0","responseTime":80,"status":201,"url":"/devices/5b735f85-a5e4-4e39-9c8a-ec1749176d7b?changedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Successfully instantiated devices for experiment","requestID":"864545bc888803cdec104210e70e6fe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Attempting to update booking for experiment","requestID":"864545bc888803cdec104210e70e6fe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Successfully updated booking for experiment","requestID":"864545bc888803cdec104210e70e6fe5"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Successfully set up experiment","requestID":"864545bc888803cdec104210e70e6fe5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8107b350-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8107da60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"81080170-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Successfully running experiment","requestID":"864545bc888803cdec104210e70e6fe5"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1678,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:35Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1678,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.550524,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8107b350-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 9ms","method":"POST","requestID":"8107b350-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Received request.","req_id":1679,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:35Z"} authorization-1 | {"client_addr":"127.0.0.1:37600","level":"info","msg":"Sent response.","req_id":1679,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":0.626591,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:35Z"} authorization-1 | {"client_addr":"127.0.0.1:43384","level":"info","msg":"Received request.","req_id":1680,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:35Z"} authorization-1 | {"client_addr":"127.0.0.1:43384","level":"info","msg":"Sent response.","req_id":1680,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.79959,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:35Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8107da60-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"8107da60-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"50c4c657-c9aa-468c-b9cc-28f4f27c5d88","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293735.1833003} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"81080170-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","object_type":"device","rebac_allow":false,"scope_allow":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":"81080170-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"data":{"error":"MissingEntityError","message":"Could not find websocket connection for device 4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","method":"POST","stack":"MissingEntityError: Could not find websocket connection for device 4c0721dd-4343-4cf8-b75c-9e909f8ed8a6\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/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"81080170-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/signaling 404 15ms","method":"POST","requestID":"81080170-848f-11ef-9233-95baf63f17e0","responseTime":15,"status":404,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:35.073200367Z"}]},"request_id":"ac0c518f-7327-47e7-aac0-c718ad94f3fc","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293735.1893518} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"8107b350-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"Could not find websocket connection for device 4c0721dd-4343-4cf8-b75c-9e909f8ed8a6"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"864545bc888803cdec104210e70e6fe5"} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Read","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:32.796914177Z"}]},"request_id":"838047a6-e966-4767-a81c-1f4e67901bb6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293735.190702} authorization-1 | {"level":"info","message":"POST /relations/query 200 3ms","method":"POST","requestID":"8107da60-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"810ae7a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8107b350-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1681,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:35Z"} device-1 | {"level":"info","message":"GET /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6? 200 23ms","method":"GET","requestID":"8107b350-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8107da60-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3? 200 23ms","method":"GET","requestID":"8107da60-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3?"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"1df7197d-59fd-4a1b-ab8b-22e94eb9d5da","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293735.198329} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","error":"rpc error: code = Code(2000) desc = Invalid tuple 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F52ec297a-ce81-4ecb-8e62-14d17dc27549#owner@http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F52ec297a-ce81-4ecb-8e62-14d17dc27549","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"e1066d03-89d4-4c9b-80b9-4d6075e2a793","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293735.1987748} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1681,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.765265,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:35Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"810ae7a0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","object_type":"device","rebac_allow":false,"scope_allow":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":"810ae7a0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"a5798dc1-5088-49a4-8575-87bc3a6ecf54","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293735.1993725} authorization-1 | {"level":"info","message":"POST /relations/update 200 20ms","method":"POST","requestID":"864545bc888803cdec104210e70e6fe5","responseTime":20,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"810ae7a0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/signaling 200 11ms","method":"POST","requestID":"810ae7a0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/signaling"} experiment-1 | {"data":{"experiment":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549","user":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"level":"info","message":"Successfully handled POST request on endpoint /experiments","requestID":"864545bc888803cdec104210e70e6fe5"} gateway-1 | {"time_local":"07/Oct/2024:09:35:35 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /experiments? HTTP/1.1","status": "201","body_bytes_sent":"1108","request_time":"0.266","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"864545bc888803cdec104210e70e6fe5"} experiment-1 | {"level":"info","message":"POST /experiments? 201 259ms","method":"POST","requestID":"864545bc888803cdec104210e70e6fe5","responseTime":259,"status":201,"url":"/experiments?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"4acc2d9fe1bce81728a2a2f30601b4be","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"4acc2d9fe1bce81728a2a2f30601b4be","responseTime":1,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"OPTIONS /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/websocket 200 1ms","method":"OPTIONS","requestID":"4acc2d9fe1bce81728a2a2f30601b4be","responseTime":1,"status":200,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/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":"4acc2d9fe1bce81728a2a2f30601b4be"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6Im44Q2x2ZTYyLXkzM1BsdzZQdkRNSFFBeU9xNV80OEJ4bHd4cVFxV3lxbWc5QkhJc1N2bHZrcjYwTE5KSUdsblZUU3ZWOTJycVQ0aWNXdGYtakRqcGlRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczN30.xFYb2_CuEWTsjx9ciKF9caePBRenZWcTZsa9cc0w-Jk","level":"info","message":"auth send jwt","requestID":"a1d19d52f8a4d6e458e0bacf7e73c458"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"a1d19d52f8a4d6e458e0bacf7e73c458","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket called","requestID":"a1d19d52f8a4d6e458e0bacf7e73c458"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1682,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1682,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.2364,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"a1d19d52f8a4d6e458e0bacf7e73c458","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","object_type":"device","payload":{"admin":true,"edgeToken":"n8Clve62-y33Plw6PvDMHQAyOq5_48BxlwxqQqWyqmg9BHIsSvlvkr60LNJIGlnVTSvV92rqT4icWtf-jDjpiQ","iat":1728293737,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6Im44Q2x2ZTYyLXkzM1BsdzZQdkRNSFFBeU9xNV80OEJ4bHd4cVFxV3lxbWc5QkhJc1N2bHZrcjYwTE5KSUdsblZUU3ZWOTJycVQ0aWNXdGYtakRqcGlRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczN30.xFYb2_CuEWTsjx9ciKF9caePBRenZWcTZsa9cc0w-Jk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"a1d19d52f8a4d6e458e0bacf7e73c458","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdWebsocket succeeded","requestID":"a1d19d52f8a4d6e458e0bacf7e73c458"} device-1 | {"level":"info","message":"POST /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/websocket 200 22ms","method":"POST","requestID":"a1d19d52f8a4d6e458e0bacf7e73c458","responseTime":22,"status":200,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/websocket"} gateway-1 | {"time_local":"07/Oct/2024:09:35:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"POST /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/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":"a1d19d52f8a4d6e458e0bacf7e73c458"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"device 'http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6' connected"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e8c0543618353c77e9906e6399b32ac4","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"e8c0543618353c77e9906e6399b32ac4","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/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"e8c0543618353c77e9906e6399b32ac4"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"083617945ccbfe4ead43197bbe9430db","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"083617945ccbfe4ead43197bbe9430db","responseTime":2,"status":200,"url":"/auth"} gateway-1 | {"time_local":"07/Oct/2024:09:35:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"OPTIONS /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6? 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":"083617945ccbfe4ead43197bbe9430db"} device-1 | {"level":"info","message":"OPTIONS /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6? 200 2ms","method":"OPTIONS","requestID":"083617945ccbfe4ead43197bbe9430db","responseTime":2,"status":200,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6?"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 21ms","method":"POST","requestID":"e8c0543618353c77e9906e6399b32ac4","responseTime":21,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.026","http_referrer":"","http_user_agent":"node-fetch","requestID":"e8c0543618353c77e9906e6399b32ac4"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6Im44Q2x2ZTYyLXkzM1BsdzZQdkRNSFFBeU9xNV80OEJ4bHd4cVFxV3lxbWc5QkhJc1N2bHZrcjYwTE5KSUdsblZUU3ZWOTJycVQ0aWNXdGYtakRqcGlRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczN30.xFYb2_CuEWTsjx9ciKF9caePBRenZWcTZsa9cc0w-Jk","level":"info","message":"auth send jwt","requestID":"bfe613d3a52e62041f00058b9b8f616f"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"bfe613d3a52e62041f00058b9b8f616f","responseTime":2,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"patchDevicesByDeviceId called","requestID":"bfe613d3a52e62041f00058b9b8f616f"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1683,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1683,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.233281,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:37Z"} authorization-1 | {"action":"edit","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"bfe613d3a52e62041f00058b9b8f616f","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","object_type":"device","payload":{"admin":true,"edgeToken":"n8Clve62-y33Plw6PvDMHQAyOq5_48BxlwxqQqWyqmg9BHIsSvlvkr60LNJIGlnVTSvV92rqT4icWtf-jDjpiQ","iat":1728293737,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6Im44Q2x2ZTYyLXkzM1BsdzZQdkRNSFFBeU9xNV80OEJ4bHd4cVFxV3lxbWc5QkhJc1N2bHZrcjYwTE5KSUdsblZUU3ZWOTJycVQ0aWNXdGYtakRqcGlRIiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczN30.xFYb2_CuEWTsjx9ciKF9caePBRenZWcTZsa9cc0w-Jk"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"bfe613d3a52e62041f00058b9b8f616f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:35.073200367Z"}]},"request_id":"59a70dec-8a18-4794-a5a9-cb46ba22f37e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293737.334344} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"bfe613d3a52e62041f00058b9b8f616f","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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"02341074-d631-4de9-b13c-2e7ee37cf675","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293737.3422773} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"bfe613d3a52e62041f00058b9b8f616f","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:35.073200367Z"}]},"request_id":"ae8b0807-fad0-4624-bb88-49cb050ff049","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293737.35504} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"bfe613d3a52e62041f00058b9b8f616f","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6' to 'http://localhost/callbacks/experiment'","requestID":"bfe613d3a52e62041f00058b9b8f616f"} device-1 | {"level":"info","message":"patchDevicesByDeviceId succeeded","requestID":"bfe613d3a52e62041f00058b9b8f616f"} gateway-1 | {"time_local":"07/Oct/2024:09:35:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"PATCH /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6? HTTP/1.1","status": "200","body_bytes_sent":"998","request_time":"0.043","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"bfe613d3a52e62041f00058b9b8f616f"} device-1 | {"level":"info","message":"PATCH /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6? 200 39ms","method":"PATCH","requestID":"bfe613d3a52e62041f00058b9b8f616f","responseTime":39,"status":200,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6?"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"71292a3e588296d097293d9b33855942","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"71292a3e588296d097293d9b33855942","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":[{"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/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"71292a3e588296d097293d9b33855942"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 9ms","method":"POST","requestID":"71292a3e588296d097293d9b33855942","responseTime":9,"status":200,"url":"/callbacks/experiment"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczN30.tcM-8dfc8e_6QWAprypHsDhcI76BsSOBv0DpxQeHp-0","level":"info","message":"auth send jwt","requestID":"86a6eda51d4d1450579f8b15c8d4be52"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.013","http_referrer":"","http_user_agent":"node-fetch","requestID":"71292a3e588296d097293d9b33855942"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"86a6eda51d4d1450579f8b15c8d4be52","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"86a6eda51d4d1450579f8b15c8d4be52"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1684,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1684,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.304816,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"86a6eda51d4d1450579f8b15c8d4be52","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293737,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczN30.tcM-8dfc8e_6QWAprypHsDhcI76BsSOBv0DpxQeHp-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"86a6eda51d4d1450579f8b15c8d4be52","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:35.073200367Z"}]},"request_id":"74f04d69-ffd6-4067-94e7-96440f43fbae","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293737.3852196} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"86a6eda51d4d1450579f8b15c8d4be52","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"86a6eda51d4d1450579f8b15c8d4be52"} device-1 | {"level":"info","message":"GET /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6? 200 15ms","method":"GET","requestID":"86a6eda51d4d1450579f8b15c8d4be52","responseTime":15,"status":200,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6? 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":"86a6eda51d4d1450579f8b15c8d4be52"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczN30.tcM-8dfc8e_6QWAprypHsDhcI76BsSOBv0DpxQeHp-0","level":"info","message":"auth send jwt","requestID":"aecce40d0c894ee213776178a1ae15e4"} authentication-1 | {"level":"info","message":"GET /auth 200 4ms","method":"GET","requestID":"aecce40d0c894ee213776178a1ae15e4","responseTime":4,"status":200,"url":"/auth"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"aecce40d0c894ee213776178a1ae15e4"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1685,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:37Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1685,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.106939,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:37Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"aecce40d0c894ee213776178a1ae15e4","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293737,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczN30.tcM-8dfc8e_6QWAprypHsDhcI76BsSOBv0DpxQeHp-0"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"aecce40d0c894ee213776178a1ae15e4","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:32.796914177Z"}]},"request_id":"872b0f49-6e8a-4543-9400-2569ddf57ed3","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293737.407301} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"aecce40d0c894ee213776178a1ae15e4","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"aecce40d0c894ee213776178a1ae15e4"} device-1 | {"level":"info","message":"GET /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3? 200 15ms","method":"GET","requestID":"aecce40d0c894ee213776178a1ae15e4","responseTime":15,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3?"} gateway-1 | {"time_local":"07/Oct/2024:09:35:37 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3? 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":"aecce40d0c894ee213776178a1ae15e4"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"840737b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"840785d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1686,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1686,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.299406,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"840737b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 6ms","method":"POST","requestID":"840737b0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44634","level":"info","msg":"Received request.","req_id":1687,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"client_addr":"127.0.0.1:44634","level":"info","msg":"Sent response.","req_id":1687,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":2.067034,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"840785d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 11ms","method":"POST","requestID":"840785d0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:35.073200367Z"}]},"request_id":"1426e4b3-9e05-4523-aaa4-f965e5b2f5d7","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.217795} authorization-1 | {"level":"info","message":"POST /relations/query 200 5ms","method":"POST","requestID":"840737b0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:32.796914177Z"}]},"request_id":"0e0a033e-046a-48a9-b66b-0fefd0b2b904","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.2239275} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"840737b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"level":"info","message":"POST /relations/query 200 4ms","method":"POST","requestID":"840785d0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"GET /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6? 200 23ms","method":"GET","requestID":"840737b0-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"840785d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3? 200 26ms","method":"GET","requestID":"840785d0-848f-11ef-9233-95baf63f17e0","responseTime":26,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3?"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"840c19b0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1688,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"4146ed70-9208-4808-b3cd-7c8aab983f60","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.241924} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1688,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":5.31805,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"840c19b0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","object_type":"device","rebac_allow":false,"scope_allow":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":"840c19b0-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"840c19b0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/signaling 200 16ms","method":"POST","requestID":"840c19b0-848f-11ef-9233-95baf63f17e0","responseTime":16,"status":200,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"840ed8d0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1689,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5b518e8a-e130-4d95-a620-c3b6c82ae9a6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.2606707} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1689,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":3.970599,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"840ed8d0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","object_type":"device","rebac_allow":false,"scope_allow":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":"840ed8d0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"840ed8d0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/signaling 200 14ms","method":"POST","requestID":"840ed8d0-848f-11ef-9233-95baf63f17e0","responseTime":14,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/signaling"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Attempting to create peerconnections for experiment","requestID":"864545bc888803cdec104210e70e6fe5"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"841170e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"getDevicesByDeviceId called","requestID":"8411bf00-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1690,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1690,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.094629,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"client_addr":"127.0.0.1:44634","level":"info","msg":"Received request.","req_id":1691,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"841170e0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"841170e0-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/authorize"} authorization-1 | {"client_addr":"127.0.0.1:44634","level":"info","msg":"Sent response.","req_id":1691,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.818985,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8411bf00-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 7ms","method":"POST","requestID":"8411bf00-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:35.073200367Z"}]},"request_id":"40193bb2-f0d0-4f63-a312-9c920bff806e","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.2842999} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"841170e0-848f-11ef-9233-95baf63f17e0","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:32788","raw_request":{"continuation_token":"","page_size":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"","user":""}},"raw_response":{"continuation_token":"","tuples":[{"key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"owner","user":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"},"timestamp":"2024-10-07T09:35:32.796914177Z"}]},"request_id":"27d51697-fe72-444b-b5e5-4778317b1f2f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.286186} authorization-1 | {"level":"info","message":"POST /relations/query 200 7ms","method":"POST","requestID":"8411bf00-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/relations/query"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"841170e0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6? 200 25ms","method":"GET","requestID":"841170e0-848f-11ef-9233-95baf63f17e0","responseTime":25,"status":200,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6?"} device-1 | {"level":"info","message":"getDevicesByDeviceId succeeded","requestID":"8411bf00-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3? 200 24ms","method":"GET","requestID":"8411bf00-848f-11ef-9233-95baf63f17e0","responseTime":24,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3?"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Building connection plan","requestID":"864545bc888803cdec104210e70e6fe5"} experiment-1 | {"data":{"pairwiseServiceConfigurations":[{"configuration":{},"participants":[{"config":{"interfaces":[]},"role":"device1","serviceId":"electrical","uuid":"ae0ce26b-395e-49a3-ad04-3ff5ae7ece26"},{"config":{"interfaces":[]},"role":"device2","serviceId":"electrical","uuid":"1b92516f-6c1b-4bbb-9b7b-80dd1b8d6c7d"}],"serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","uuid":"6f1d8cf7-9869-4a22-9e84-a44a3724e8cb"}]},"level":"info","message":"Built pairwise service configurations","requestID":"864545bc888803cdec104210e70e6fe5"} 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/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6"},{"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/685b22aa-5cdd-497e-9ef1-fa4f497d86c3"}],"type":"webrtc"}]},"level":"info","message":"Built connection plan","requestID":"864545bc888803cdec104210e70e6fe5"} device-1 | {"level":"info","message":"postPeerconnections called","requestID":"841604c0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1692,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1692,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":615,"resp_duration":1.252065,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"create","level":"info","message":"opa_check","object":"peerconnection:~~~TYPE~~~","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"841604c0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:~~~TYPE~~~","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293734,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5MzczNH0.SE_vTZzS04nrjxZIQ7ZYw7mnPdUcon3ztmXCWpUq2N4"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"841604c0-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f'. 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fundefined","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]}},"raw_response":{},"request_id":"7a3d1af2-22de-4b97-84b9-a38335e4d870","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.319174} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"e04e89d9-3488-438b-95a0-73cc730a7970","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.3199732} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"841604c0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postPeerconnections: registering closed-callback for 'http://localhost/callbacks/experiment'","requestID":"841604c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections: registering status-changed-callback for 'http://localhost/callbacks/experiment'","requestID":"841604c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Trying to create signaling queues for peerconnection 'http://localhost/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022'","requestID":"841604c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"Successfully created signaling queues for peerconnection 'http://localhost/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022'","requestID":"841604c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"postPeerconnections succeeded","requestID":"841604c0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /peerconnections?closedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment&statusChangedUrl=http%3A%2F%2Flocalhost%2Fcallbacks%2Fexperiment 201 37ms","method":"POST","requestID":"841604c0-848f-11ef-9233-95baf63f17e0","responseTime":37,"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":"841604c0-848f-11ef-9233-95baf63f17e0"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Successfully created peerconnections for experiment","requestID":"864545bc888803cdec104210e70e6fe5"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"84212850-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1693,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"f73e17f1-234a-45cb-ac69-b35e8f701a08","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.3784466} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1693,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.487385,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"84212850-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","object_type":"device","rebac_allow":false,"scope_allow":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":"84212850-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"84212850-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/signaling 200 11ms","method":"POST","requestID":"84212850-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"84232420-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1694,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"450ea4c5-c118-4422-ac1a-aece8cc1fc9c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.3905442} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1694,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.186104,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"84232420-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","object_type":"device","rebac_allow":false,"scope_allow":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":"84232420-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"84232420-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/signaling 200 10ms","method":"POST","requestID":"84232420-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/signaling"} device-1 | {"device":"685b22aa-5cdd-497e-9ef1-fa4f497d86c3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"685b22aa-5cdd-497e-9ef1-fa4f497d86c3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"device":"4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"webrtc connect"} device-1 | {"content":{"canTrickle":true},"device":"4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"options"} device-1 | {"content":{"sdp":"v=0\r\no=- 5168752476298621786 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:rn2X\r\na=ice-pwd:NigH8Noguw82XUkARV6KuMDJ\r\na=ice-options:trickle\r\na=fingerprint:sha-256 31:EB:9E:D4:31:A5:2A:F8:F1:39:CA:0C:86:8B:1B:56:36:9E:7E:13:55:E0:DA:93:EB:5A:38:09:1E:ED:83:F5\r\na=setup:actpass\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"offer"},"device":"685b22aa-5cdd-497e-9ef1-fa4f497d86c3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"offer"} device-1 | {"content":{"sdp":"v=0\r\no=- 758771913266270386 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:nJET\r\na=ice-pwd:b8pGe/iGNylM03V0cL2mXRC5\r\na=ice-options:trickle\r\na=fingerprint:sha-256 4E:5D:9E:3B:79:62:73:EB:76:C0:F9:D7:A2:71:60:D7:B0:E9:7E:8F:4F:53:D1:88:17:92:65:5A:51:95:99:F1\r\na=setup:active\r\na=mid:0\r\na=sctp-port:5000\r\na=max-message-size:262144\r\n","type":"answer"},"device":"4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"answer"} device-1 | {"content":{"candidate":"candidate:894334365 1 udp 2113937151 14a9119c-13a0-44b0-ac79-177847b9133a.local 35707 typ host generation 0 ufrag nJET network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2976063458 1 udp 1677729535 141.24.211.56 35707 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag nJET network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","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/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6'"} device-1 | {"data":{"error":{}},"level":"error","message":"An error occurred while handling an incoming message for device 'http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6'"} device-1 | {"content":{"candidate":"candidate:799851106 1 udp 2113937151 c6f94584-2597-405a-a70c-c5936e8911b9.local 34836 typ host generation 0 ufrag rn2X network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"685b22aa-5cdd-497e-9ef1-fa4f497d86c3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"sending:","signalingType":"candidate"} device-1 | {"content":{"candidate":"candidate:2877401117 1 udp 1677729535 141.24.211.56 34836 typ srflx raddr 0.0.0.0 rport 0 generation 0 ufrag rn2X network-cost 999","sdpMLineIndex":0,"sdpMid":"0"},"device":"685b22aa-5cdd-497e-9ef1-fa4f497d86c3","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/685b22aa-5cdd-497e-9ef1-fa4f497d86c3'"} device-1 | {"device":"685b22aa-5cdd-497e-9ef1-fa4f497d86c3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connecting"} device-1 | {"device":"4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","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/c8e588e4-f921-4bcd-b647-2ff31bf9e022' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c8e588e4-f921-4bcd-b647-2ff31bf9e022","statusDeviceA":"new","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"685b22aa-5cdd-497e-9ef1-fa4f497d86c3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} device-1 | {"device":"4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"IceGatheringComplete"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"05b16936949a94625851245ff4fc87f3","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"05b16936949a94625851245ff4fc87f3","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/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6"},{"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/685b22aa-5cdd-497e-9ef1-fa4f497d86c3"}],"status":"connecting","type":"webrtc","url":"http://localhost/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022"}}},"level":"info","message":"received a callback","requestID":"05b16936949a94625851245ff4fc87f3"} device-1 | {"device":"685b22aa-5cdd-497e-9ef1-fa4f497d86c3","deviceName":"JS Device 2","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} device-1 | {"device":"4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"WebRTCPeerConnection connectionStateChanged","state":"connected"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 4ms","method":"POST","requestID":"05b16936949a94625851245ff4fc87f3","responseTime":4,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.007","http_referrer":"","http_user_agent":"node-fetch","requestID":"05b16936949a94625851245ff4fc87f3"} device-1 | {"data":{"peerconnection":"c8e588e4-f921-4bcd-b647-2ff31bf9e022","statusDeviceA":"connecting","statusDeviceB":"connecting"},"level":"info","message":"peerconnection devices status info"} device-1 | {"device":"4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","deviceName":"JS Device 1","isTrusted":true,"labels":{"job":"remote_device"},"level":"info"} device-1 | {"data":{"peerconnection":"c8e588e4-f921-4bcd-b647-2ff31bf9e022","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/c8e588e4-f921-4bcd-b647-2ff31bf9e022' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c8e588e4-f921-4bcd-b647-2ff31bf9e022","statusDeviceA":"connected","statusDeviceB":"connected"},"level":"info","message":"peerconnection devices status info"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"370c8343df8df78829ba6550881c0a9f","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"370c8343df8df78829ba6550881c0a9f","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/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6"},{"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/685b22aa-5cdd-497e-9ef1-fa4f497d86c3"}],"status":"connected","type":"webrtc","url":"http://localhost/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022"}}},"level":"info","message":"received a callback","requestID":"370c8343df8df78829ba6550881c0a9f"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId called","requestID":"842fa740-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1695,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc8e588e4-f921-4bcd-b647-2ff31bf9e022","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"75e61838-ea75-4bfe-a6bd-05d059df1605","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.4724157} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1695,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":331,"resp_duration":2.08222,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"842fa740-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"peerconnection:http://localhost/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022","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":"842fa740-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"getPeerconnectionsByPeerconnectionId succeeded","requestID":"842fa740-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"GET /peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022 200 7ms","method":"GET","requestID":"842fa740-848f-11ef-9233-95baf63f17e0","responseTime":7,"status":200,"url":"/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 31ms","method":"POST","requestID":"370c8343df8df78829ba6550881c0a9f","responseTime":31,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.033","http_referrer":"","http_user_agent":"node-fetch","requestID":"370c8343df8df78829ba6550881c0a9f"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8433c5f0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1696,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"5c0f2f52-5466-4208-acb1-7b73ce353eec","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.4997747} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1696,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.188977,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8433c5f0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","object_type":"device","rebac_allow":false,"scope_allow":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":"8433c5f0-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"8433c5f0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/signaling 200 8ms","method":"POST","requestID":"8433c5f0-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/signaling"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"84354c90-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1697,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"e5a6b469-9277-4ee9-905f-fc2ba8fe80a4","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.509481} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1697,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.262942,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"84354c90-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","object_type":"device","rebac_allow":false,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:experiment-service","subject_alt":"experiment-service"}},"subject":"experiment-service"} authorization-1 | {"level":"info","message":"POST /authorize 200 5ms","method":"POST","requestID":"84354c90-848f-11ef-9233-95baf63f17e0","responseTime":5,"status":200,"url":"/authorize"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"84354c90-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/signaling 200 8ms","method":"POST","requestID":"84354c90-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/signaling"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5Mzc0MH0.GCgWfqwBY4uM8pajbvEL8NqxSHEEHszzof1Jbr95_QQ","level":"info","message":"auth send jwt","requestID":"fc956d98e0852872e5b82ef3b7e6608c"} authentication-1 | {"level":"info","message":"GET /auth 200 3ms","method":"GET","requestID":"fc956d98e0852872e5b82ef3b7e6608c","responseTime":3,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling GET request on endpoint /experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549","requestID":"fc956d98e0852872e5b82ef3b7e6608c"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1698,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1698,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.606745,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"view","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"fc956d98e0852872e5b82ef3b7e6608c","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293740,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5Mzc0MH0.GCgWfqwBY4uM8pajbvEL8NqxSHEEHszzof1Jbr95_QQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"fc956d98e0852872e5b82ef3b7e6608c","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"level":"info","message":"Successfully handled GET request on endpoint /experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549","requestID":"fc956d98e0852872e5b82ef3b7e6608c"} experiment-1 | {"level":"info","message":"GET /experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549 200 9ms","method":"GET","requestID":"fc956d98e0852872e5b82ef3b7e6608c","responseTime":9,"status":200,"url":"/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"} gateway-1 | {"time_local":"07/Oct/2024:09:35:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549 HTTP/1.1","status": "200","body_bytes_sent":"1181","request_time":"0.013","http_referrer":"","http_user_agent":"node-fetch/1.0 (+https://github.com/bitinn/node-fetch)","requestID":"fc956d98e0852872e5b82ef3b7e6608c"} authentication-1 | {"jwt":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5Mzc0MH0.GCgWfqwBY4uM8pajbvEL8NqxSHEEHszzof1Jbr95_QQ","level":"info","message":"auth send jwt","requestID":"b2c28751f7d0645dd9f5fdca620b4397"} authentication-1 | {"level":"info","message":"GET /auth 200 2ms","method":"GET","requestID":"b2c28751f7d0645dd9f5fdca620b4397","responseTime":2,"status":200,"url":"/auth"} experiment-1 | {"level":"info","message":"Handling DELETE request on endpoint /experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549","requestID":"b2c28751f7d0645dd9f5fdca620b4397"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1699,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1699,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":662,"resp_duration":0.67266,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"experiment:http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"b2c28751f7d0645dd9f5fdca620b4397","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"experiment:http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549","object_type":"experiment","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293740,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5Mzc0MH0.GCgWfqwBY4uM8pajbvEL8NqxSHEEHszzof1Jbr95_QQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"b2c28751f7d0645dd9f5fdca620b4397","responseTime":3,"status":200,"url":"/authorize"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Attempting to finish experiment","requestID":"b2c28751f7d0645dd9f5fdca620b4397"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId called","requestID":"843e4d40-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1700,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1700,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":674,"resp_duration":0.678924,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"peerconnection:http://localhost/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"843e4d40-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"peerconnection:http://localhost/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022","object_type":"peerconnection","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293740,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5Mzc0MH0.GCgWfqwBY4uM8pajbvEL8NqxSHEEHszzof1Jbr95_QQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 3ms","method":"POST","requestID":"843e4d40-848f-11ef-9233-95baf63f17e0","responseTime":3,"status":200,"url":"/authorize"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022","device":"4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","deviceName":"JS Device 1","labels":{"job":"remote_device"},"level":"info","message":"closing connection","messageType":"command"} device-1 | {"command":"closePeerconnection","connectionUrl":"http://localhost/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022","device":"685b22aa-5cdd-497e-9ef1-fa4f497d86c3","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/c8e588e4-f921-4bcd-b647-2ff31bf9e022' to 'http://localhost/callbacks/experiment'"} device-1 | {"level":"info","message":"Sending closed-callback for peerconnection 'http://localhost/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"peerconnection":"c8e588e4-f921-4bcd-b647-2ff31bf9e022","statusDeviceA":"connected","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc8e588e4-f921-4bcd-b647-2ff31bf9e022': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"peerconnection:http%3A%2F%2Flocalhost%2Fpeerconnections%2Fc8e588e4-f921-4bcd-b647-2ff31bf9e022","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"9d304d65-6f76-4f72-b0a4-8b2cc8aba69a","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.580045} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"bc43a5d694652ad042aa4a482f1124ca","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:175:3)"} authentication-1 | {"level":"info","message":"GET /auth 200 1ms","method":"GET","requestID":"bc43a5d694652ad042aa4a482f1124ca","responseTime":1,"status":200,"url":"/auth"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"e43b56fdf783d6512ab1fccc072bd94e","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.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:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"f0944c57-66af-43f3-8782-49463fee881d","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.58038} authentication-1 | {"level":"info","message":"GET /auth 200 0ms","method":"GET","requestID":"e43b56fdf783d6512ab1fccc072bd94e","responseTime":0,"status":200,"url":"/auth"} authorization-1 | {"level":"info","message":"POST /relations/update 200 9ms","method":"POST","requestID":"843e4d40-848f-11ef-9233-95baf63f17e0","responseTime":9,"status":200,"url":"/relations/update"} experiment-1 | {"data":{"callback":{"callbackType":"event","eventType":"peerconnection-closed","peerconnection":{"devices":[{"config":{"services":[{"interfaces":[],"remoteServiceDescription":{"interfaces":[{"availableSignals":{"gpio":["gpio1","gpio2"]},"interfaceType":"gpio"}],"serviceDirection":"prosumer","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical","supportedConnectionTypes":["webrtc"]},"remoteServiceId":"electrical","serviceId":"electrical","serviceType":"https://api.goldi-labs.de/serviceTypes/electrical"}]},"status":"connected","url":"http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6"},{"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/685b22aa-5cdd-497e-9ef1-fa4f497d86c3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022"}}},"level":"info","message":"received a callback","requestID":"e43b56fdf783d6512ab1fccc072bd94e"} 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/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6"},{"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/685b22aa-5cdd-497e-9ef1-fa4f497d86c3"}],"status":"closed","type":"webrtc","url":"http://localhost/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022"}}},"level":"info","message":"received a callback","requestID":"bc43a5d694652ad042aa4a482f1124ca"} device-1 | {"data":{"peerconnection":"c8e588e4-f921-4bcd-b647-2ff31bf9e022","statusDeviceA":"closed","statusDeviceB":"closed"},"level":"info","message":"peerconnection devices status info"} device-1 | {"level":"info","message":"deletePeerconnectionsByPeerconnectionId succeeded","requestID":"843e4d40-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022 204 33ms","method":"DELETE","requestID":"843e4d40-848f-11ef-9233-95baf63f17e0","responseTime":33,"status":204,"url":"/peerconnections/c8e588e4-f921-4bcd-b647-2ff31bf9e022"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId called","requestID":"8443cb80-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1701,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1701,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":650,"resp_duration":1.658559,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"delete","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8443cb80-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","object_type":"device","payload":{"admin":true,"edgeToken":"yMHybXBIExbPYIhoJoEc758k8aekxoYVp0T0kUTGSXRdvp6_kf3uuJp7fl9gMhlwqcF9fI_6DkjKQ6M3hgolrw","iat":1728293740,"sub":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"},"rebac_allow":true,"scope_allow":true,"scopes":["read","write","connect"],"subject":"user:http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f","subject_alt":"http://localhost/users/f604e93b-f995-4233-aba9-591eba429f6f"}},"subject":"eyJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJodHRwOi8vbG9jYWxob3N0L3VzZXJzL2Y2MDRlOTNiLWY5OTUtNDIzMy1hYmE5LTU5MWViYTQyOWY2ZiIsImVkZ2VUb2tlbiI6InlNSHliWEJJRXhiUFlJaG9Kb0VjNzU4azhhZWt4b1lWcDBUMGtVVEdTWFJkdnA2X2tmM3V1SnA3Zmw5Z01obHdxY0Y5ZklfNkRraktRNk0zaGdvbHJ3IiwiYWRtaW4iOnRydWUsImlhdCI6MTcyODI5Mzc0MH0.GCgWfqwBY4uM8pajbvEL8NqxSHEEHszzof1Jbr95_QQ"} authorization-1 | {"level":"info","message":"POST /authorize 200 4ms","method":"POST","requestID":"8443cb80-848f-11ef-9233-95baf63f17e0","responseTime":4,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"6a9b08ab-14b6-4067-99a9-cb002b855a11","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.613568} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"375e3468-5510-4be8-b32a-6b788ead526c","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.6136777} authorization-1 | {"level":"info","message":"POST /relations/update 200 8ms","method":"POST","requestID":"8443cb80-848f-11ef-9233-95baf63f17e0","responseTime":8,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"deleteDevicesByDeviceId succeeded","requestID":"8443cb80-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"DELETE /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6 204 23ms","method":"DELETE","requestID":"8443cb80-848f-11ef-9233-95baf63f17e0","responseTime":23,"status":204,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6"} experiment-1 | {"data":{"experimentUrl":"http://localhost/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"},"level":"info","message":"Successfully finished experiment","requestID":"b2c28751f7d0645dd9f5fdca620b4397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"8449bef0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1702,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"3596120b-76dc-47be-9310-9927dbef721f","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.6454198} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1702,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.343882,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"8449bef0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6","object_type":"device","rebac_allow":false,"scope_allow":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":"8449bef0-848f-11ef-9233-95baf63f17e0","responseTime":6,"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/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/signaling"},"level":"error","message":"An error occurred during the handling of a request","requestID":"8449bef0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/signaling 404 10ms","method":"POST","requestID":"8449bef0-848f-11ef-9233-95baf63f17e0","responseTime":10,"status":404,"url":"/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6/signaling"} experiment-1 | {"data":{"response":{"body":{"error":"MissingEntityError","message":"The requested Device Overview does not exist in the database"},"status":404}},"level":"error","message":"Could not send status-update message","requestID":"b2c28751f7d0645dd9f5fdca620b4397"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling called","requestID":"844bbac0-848f-11ef-9233-95baf63f17e0"} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Received request.","req_id":1703,"req_method":"POST","req_path":"/v1/data/crosslab","subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"Check","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","contextual_tuples":null,"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","trace":false,"tuple_key":{"object":"device:http%3A%2F%2Flocalhost%2Fdevices%2F685b22aa-5cdd-497e-9ef1-fa4f497d86c3","relation":"viewer","user":"user:experiment-service"}},"raw_response":{"allowed":false,"resolution":""},"request_id":"94550dc5-df4b-489b-a9ec-8858c5286a45","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.658611} authorization-1 | {"client_addr":"127.0.0.1:51800","level":"info","msg":"Sent response.","req_id":1703,"req_method":"POST","req_path":"/v1/data/crosslab","resp_bytes":307,"resp_duration":2.918157,"resp_status":200,"subsystem":"opa","time":"2024-10-07T09:35:40Z"} authorization-1 | {"action":"message","level":"info","message":"opa_check","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","openfga":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","store":"01J9K55HPN7HDN7H7H5JAW65EV"},"requestID":"844bbac0-848f-11ef-9233-95baf63f17e0","response":{"result":{"allow":true,"enc":"user:experiment-service","object":"device:http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3","object_type":"device","rebac_allow":false,"scope_allow":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":"844bbac0-848f-11ef-9233-95baf63f17e0","responseTime":6,"status":200,"url":"/authorize"} authorization-1 | {"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","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%2Ff604e93b-f995-4233-aba9-591eba429f6f', relation: 'owner', object: 'experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F52ec297a-ce81-4ecb-8e62-14d17dc27549': 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:32788","raw_request":{"authorization_model_id":"01J9K55HRNFPHZA2D9VRCYSTK0","deletes":{"tuple_keys":[{"object":"experiment:http%3A%2F%2Flocalhost%2Fexperiments%2F52ec297a-ce81-4ecb-8e62-14d17dc27549","relation":"owner","user":"http%3A%2F%2Flocalhost%2Fusers%2Ff604e93b-f995-4233-aba9-591eba429f6f"}]},"store_id":"01J9K55HPN7HDN7H7H5JAW65EV","writes":null},"raw_response":{},"request_id":"bb496387-2110-4e0f-b793-5745b6d255a6","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.6597905} authorization-1 | {"build.commit":"bc6a45ade4ae02d389b2588ae3bb4676fdcf77ec","build.version":"v1.2.0","grpc_code":0,"grpc_method":"ReadAuthorizationModel","grpc_service":"openfga.v1.OpenFGAService","grpc_type":"unary","level":"info","message":"grpc_req_complete","peer.address":"127.0.0.1:32788","raw_request":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","store_id":"01J9K55HPN7HDN7H7H5JAW65EV"},"raw_response":{"authorization_model":{"id":"01J9K55HRNFPHZA2D9VRCYSTK0","schema_version":"1.1","type_definitions":[{"metadata":{"relations":{"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"viewer":{"this":{}}},"type":"user"},{"metadata":{"relations":{"active_booking":{"directly_related_user_types":[{"type":"booking"}]},"booker":{"directly_related_user_types":[]},"owner":{"directly_related_user_types":[{"type":"user"}]},"parent":{"directly_related_user_types":[{"type":"device"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"active_booking":{"this":{}},"booker":{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"active_booking"}}},"owner":{"this":{}},"parent":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"viewer"},"tupleset":{"object":"","relation":"parent"}}}]}}},"type":"device"},{"metadata":{"relations":{"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"member":{"this":{}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"experiment"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"peerconnection"},{"metadata":{"relations":{"experiment":{"directly_related_user_types":[{"type":"experiment"}]},"member":{"directly_related_user_types":[{"type":"user"}]},"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"experiment":{"this":{}},"member":{"union":{"child":[{"this":{}},{"tupleToUserset":{"computedUserset":{"object":"","relation":"member"},"tupleset":{"object":"","relation":"experiment"}}}]}},"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"booking"},{"metadata":{"relations":{"owner":{"directly_related_user_types":[{"type":"user"}]},"viewer":{"directly_related_user_types":[{"type":"user"}]}}},"relations":{"owner":{"this":{}},"viewer":{"union":{"child":[{"this":{}},{"computedUserset":{"object":"","relation":"owner"}}]}}},"type":"federation"}]}},"request_id":"8474f21c-c6cf-469e-8166-6fc42ec54258","store_id":"01J9K55HPN7HDN7H7H5JAW65EV","subsystem":"openfga","timestamp":1728293740.6604419} authorization-1 | {"level":"info","message":"POST /relations/update 200 24ms","method":"POST","requestID":"b2c28751f7d0645dd9f5fdca620b4397","responseTime":24,"status":200,"url":"/relations/update"} device-1 | {"level":"info","message":"postDevicesByDeviceIdSignaling succeeded","requestID":"844bbac0-848f-11ef-9233-95baf63f17e0"} device-1 | {"level":"info","message":"POST /devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/signaling 200 11ms","method":"POST","requestID":"844bbac0-848f-11ef-9233-95baf63f17e0","responseTime":11,"status":200,"url":"/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3/signaling"} experiment-1 | {"level":"info","message":"Successfully handled DELETE request on endpoint /experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549","requestID":"b2c28751f7d0645dd9f5fdca620b4397"} gateway-1 | {"time_local":"07/Oct/2024:09:35:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"DELETE /experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549 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":"b2c28751f7d0645dd9f5fdca620b4397"} experiment-1 | {"level":"info","message":"DELETE /experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549 204 164ms","method":"DELETE","requestID":"b2c28751f7d0645dd9f5fdca620b4397","responseTime":164,"status":204,"url":"/experiments/52ec297a-ce81-4ecb-8e62-14d17dc27549"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"e43b56fdf783d6512ab1fccc072bd94e","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.143","http_referrer":"","http_user_agent":"node-fetch","requestID":"e43b56fdf783d6512ab1fccc072bd94e"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 200 140ms","method":"POST","requestID":"bc43a5d694652ad042aa4a482f1124ca","responseTime":140,"status":200,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35: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.145","http_referrer":"","http_user_agent":"node-fetch","requestID":"bc43a5d694652ad042aa4a482f1124ca"} gateway-1 | {"time_local":"07/Oct/2024:09:35:40 +0000","remote_addr":"127.0.0.1","remote_user":"","request":"GET /devices/websocket HTTP/1.1","status": "101","body_bytes_sent":"3077","request_time":"5.901","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"e6208333dd72b8c8fdeef30502cf54a8"} gateway-1 | {"time_local":"07/Oct/2024:09:35:40 +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.453","http_referrer":"","http_user_agent":"Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) HeadlessChrome/109.0.5414.0 Safari/537.36","requestID":"9b506758d939693048af7e65269f8037"} device-1 | {"level":"info","message":"Sending changed-callback for device 'http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6' to 'http://localhost/callbacks/experiment'"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6' closed"} device-1 | {"data":{"code":1001,"reason":{"data":[],"type":"Buffer"}},"level":"info","message":"websocket connection for device 'http://localhost/devices/685b22aa-5cdd-497e-9ef1-fa4f497d86c3' closed"} authentication-1 | {"level":"info","message":"auth error No token found","requestID":"2b9dc12144452a558807db7586c855e9","stack":"Error: No token found\n at Object.getAuth (file:///usr/local/lib/node_modules/@crosslab/service-auth/app/operations/auth.js:14:19)\n at file:///usr/local/lib/node_modules/@crosslab/service-auth/app/generated/routes.js:22:45\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:149:13)\n at Route.dispatch (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/route.js:119:3)\n at Layer.handle [as handle_request] (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/layer.js:95:5)\n at /usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:284:15\n at Function.process_params (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:346:12)\n at next (/usr/local/lib/node_modules/@crosslab/service-auth/node_modules/express/lib/router/index.js:280:10)\n at Function.handle (/usr/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":"2b9dc12144452a558807db7586c855e9","responseTime":0,"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/4c0721dd-4343-4cf8-b75c-9e909f8ed8a6"},"eventType":"device-changed"}},"level":"info","message":"received a callback","requestID":"2b9dc12144452a558807db7586c855e9"} experiment-1 | {"level":"info","message":"POST /callbacks/experiment 410 2ms","method":"POST","requestID":"2b9dc12144452a558807db7586c855e9","responseTime":2,"status":410,"url":"/callbacks/experiment"} gateway-1 | {"time_local":"07/Oct/2024:09:35:40 +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":"2b9dc12144452a558807db7586c855e9"} forwarding-1 exited with code 0 authorization-1 exited with code 0 authentication-1 exited with code 0 device-1 exited with code 0 experiment-1 exited with code 0 federation-1 exited with code 0 gateway-1 exited with code 0